Browse Source

[2831] make sure resetting a segment before opening one

JINMEI Tatuya 12 years ago
parent
commit
d70fad8d81
1 changed files with 5 additions and 3 deletions
  1. 5 3
      src/lib/util/tests/memory_segment_mapped_unittest.cc

+ 5 - 3
src/lib/util/tests/memory_segment_mapped_unittest.cc

@@ -299,11 +299,13 @@ TEST_F(MemorySegmentMappedTest, namedAddress) {
     const uint16_t test_val16 = 42000;
     *static_cast<uint16_t*>(ptr16) = test_val16;
     EXPECT_FALSE(segment_->setNamedAddress("test address", ptr16));
-    MemorySegmentMapped segment_ro(mapped_file);
+    segment_.reset();           // close it before opening another one
+
+    segment_.reset(new MemorySegmentMapped(mapped_file));
     EXPECT_NE(static_cast<void*>(NULL),
-              segment_ro.getNamedAddress("test address"));
+              segment_->getNamedAddress("test address"));
     EXPECT_EQ(test_val16, *static_cast<const uint16_t*>(
-                  segment_ro.getNamedAddress("test address")));
+                  segment_->getNamedAddress("test address")));
 
     // try to set an unusually long name.  We re-create the file so
     // creating the name would cause allocation failure and trigger internal