diff options
author | Matthias Huetsch [mhu] <matthias.huetsch@oracle.com> | 2010-11-25 14:18:45 +0100 |
---|---|---|
committer | Matthias Huetsch [mhu] <matthias.huetsch@oracle.com> | 2010-11-25 14:18:45 +0100 |
commit | bb4f6eede90f866d878c6de2ebdb2a061686385c (patch) | |
tree | 7128f61a38ee36acc5a678c08ad355a004b1bd50 /store | |
parent | 042118c8cbc8e33fbff7e479f974d7571c413859 (diff) |
#i115784# store: fix memory errors uncovered by valgrind and other tools.
Diffstat (limited to 'store')
-rw-r--r-- | store/source/lockbyte.cxx | 3 | ||||
-rw-r--r-- | store/source/storbase.cxx | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/store/source/lockbyte.cxx b/store/source/lockbyte.cxx index f1145a029c29..7e4ac7bcbb00 100644 --- a/store/source/lockbyte.cxx +++ b/store/source/lockbyte.cxx @@ -600,7 +600,8 @@ oslInterlockedCount SAL_CALL MappedLockBytes::release() void MappedLockBytes::allocate_Impl (void ** ppPage, sal_uInt16 * pnSize) { OSL_PRECOND((ppPage != 0) && (pnSize != 0), "contract violation"); - *ppPage = 0, *pnSize = m_nPageSize; + if ((ppPage != 0) && (pnSize != 0)) + *ppPage = 0, *pnSize = m_nPageSize; } void MappedLockBytes::deallocate_Impl (void * pPage) diff --git a/store/source/storbase.cxx b/store/source/storbase.cxx index 6eb005e453d8..690bff8d258e 100644 --- a/store/source/storbase.cxx +++ b/store/source/storbase.cxx @@ -158,7 +158,8 @@ PageData::Allocator_Impl::~Allocator_Impl() void PageData::Allocator_Impl::allocate_Impl (void ** ppPage, sal_uInt16 * pnSize) { OSL_PRECOND((ppPage != 0) && (pnSize != 0), "contract violation"); - *ppPage = rtl_cache_alloc(m_page_cache), *pnSize = m_page_size; + if ((ppPage != 0) && (pnSize != 0)) + *ppPage = rtl_cache_alloc(m_page_cache), *pnSize = m_page_size; } void PageData::Allocator_Impl::deallocate_Impl (void * pPage) |