Adapt SharedMemory ownership changes from @oxidase
We don't leak any pointers anymore and make owning the shared memory explicit.
This commit is contained in:
committed by
Patrick Niklaus
parent
2512cf386d
commit
ebac9f586b
@@ -28,8 +28,7 @@ class DataWatchdog
|
||||
{
|
||||
public:
|
||||
DataWatchdog()
|
||||
: shared_regions(storage::makeSharedMemory(
|
||||
storage::CURRENT_REGIONS, sizeof(storage::SharedDataTimestamp), false, false)),
|
||||
: shared_regions(storage::makeSharedMemoryView(storage::CURRENT_REGIONS)),
|
||||
current_timestamp {storage::LAYOUT_NONE, storage::DATA_NONE, 0}
|
||||
{
|
||||
}
|
||||
|
||||
@@ -388,12 +388,12 @@ class SharedDataFacade final : public BaseDataFacade
|
||||
util::SimpleLogger().Write(logDEBUG) << "Loading new data with shared timestamp " << shared_timestamp;
|
||||
|
||||
BOOST_ASSERT(storage::SharedMemory::RegionExists(layout_region));
|
||||
m_layout_memory.reset(storage::makeSharedMemory(layout_region));
|
||||
m_layout_memory = storage::makeOwnedSharedMemoryView(layout_region);
|
||||
|
||||
data_layout = static_cast<storage::SharedDataLayout *>(m_layout_memory->Ptr());
|
||||
|
||||
BOOST_ASSERT(storage::SharedMemory::RegionExists(data_region));
|
||||
m_large_memory.reset(storage::makeSharedMemory(data_region));
|
||||
m_large_memory = storage::makeOwnedSharedMemoryView(data_region);
|
||||
shared_memory = (char *)(m_large_memory->Ptr());
|
||||
|
||||
LoadGraph();
|
||||
|
||||
Reference in New Issue
Block a user