summaryrefslogtreecommitdiff
path: root/indra/llplugin/llpluginsharedmemory.cpp
diff options
context:
space:
mode:
authorXiaohong Bao <bao@lindenlab.com>2011-02-23 13:48:35 -0700
committerXiaohong Bao <bao@lindenlab.com>2011-02-23 13:48:35 -0700
commit29415d140777a25704ac06973c6cf467c30c994b (patch)
tree8ea879ff5b839b2894e332ed72ff9702784949a0 /indra/llplugin/llpluginsharedmemory.cpp
parent1f0cc074823b299ed77b3d6e90e4e8f4ea60415f (diff)
parentef490e308ccce8e6df85144784a0f4580f5ac6a1 (diff)
Merge
Diffstat (limited to 'indra/llplugin/llpluginsharedmemory.cpp')
-rw-r--r--indra/llplugin/llpluginsharedmemory.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/indra/llplugin/llpluginsharedmemory.cpp b/indra/llplugin/llpluginsharedmemory.cpp
index 63ff5085c6..e2ff645a9c 100644
--- a/indra/llplugin/llpluginsharedmemory.cpp
+++ b/indra/llplugin/llpluginsharedmemory.cpp
@@ -187,7 +187,8 @@ bool LLPluginSharedMemory::create(size_t size)
mName += createName();
mSize = size;
- apr_status_t status = apr_shm_create( &(mImpl->mAprSharedMemory), mSize, mName.c_str(), gAPRPoolp );
+ mPool.create();
+ apr_status_t status = apr_shm_create( &(mImpl->mAprSharedMemory), mSize, mName.c_str(), mPool());
if(ll_apr_warn_status(status))
{
@@ -210,7 +211,7 @@ bool LLPluginSharedMemory::destroy(void)
}
mImpl->mAprSharedMemory = NULL;
}
-
+ mPool.destroy();
return true;
}
@@ -219,7 +220,8 @@ bool LLPluginSharedMemory::attach(const std::string &name, size_t size)
mName = name;
mSize = size;
- apr_status_t status = apr_shm_attach( &(mImpl->mAprSharedMemory), mName.c_str(), gAPRPoolp );
+ mPool.create();
+ apr_status_t status = apr_shm_attach( &(mImpl->mAprSharedMemory), mName.c_str(), mPool() );
if(ll_apr_warn_status(status))
{
@@ -241,6 +243,7 @@ bool LLPluginSharedMemory::detach(void)
}
mImpl->mAprSharedMemory = NULL;
}
+ mPool.destroy();
return true;
}