Parcourir la source

[2100] use offset pointer for the underlying tree

JINMEI Tatuya il y a 12 ans
Parent
commit
aef961dacd
2 fichiers modifiés avec 4 ajouts et 2 suppressions
  1. 1 1
      src/lib/datasrc/memory/zone_table.cc
  2. 3 1
      src/lib/datasrc/memory/zone_table.h

+ 1 - 1
src/lib/datasrc/memory/zone_table.cc

@@ -73,7 +73,7 @@ ZoneTable::create(util::MemorySegment& mem_sgmt) {
 
 void
 ZoneTable::destroy(util::MemorySegment& mem_sgmt, ZoneTable* ztable) {
-    ZoneTableTree::destroy(mem_sgmt, ztable->zones_);
+    ZoneTableTree::destroy(mem_sgmt, ztable->zones_.get());
     mem_sgmt.deallocate(ztable, sizeof(ZoneTable));
 }
 

+ 3 - 1
src/lib/datasrc/memory/zone_table.h

@@ -20,6 +20,8 @@
 #include <datasrc/result.h>
 #include <datasrc/memory/domaintree.h>
 
+#include <boost/interprocess/offset_ptr.hpp>
+
 namespace isc {
 namespace dns {
 class Name;
@@ -174,7 +176,7 @@ public:
     FindResult findZone(const isc::dns::Name& name) const;
 
 private:
-    ZoneTableTree* zones_;
+    boost::interprocess::offset_ptr<ZoneTableTree> zones_;
 };
 }
 }