summaryrefslogtreecommitdiff
path: root/store
diff options
context:
space:
mode:
authorMatthias Huetsch [mhu] <matthias.huetsch@oracle.com>2010-11-25 14:18:45 +0100
committerMatthias Huetsch [mhu] <matthias.huetsch@oracle.com>2010-11-25 14:18:45 +0100
commitbb4f6eede90f866d878c6de2ebdb2a061686385c (patch)
tree7128f61a38ee36acc5a678c08ad355a004b1bd50 /store
parent042118c8cbc8e33fbff7e479f974d7571c413859 (diff)
#i115784# store: fix memory errors uncovered by valgrind and other tools.
Diffstat (limited to 'store')
-rw-r--r--store/source/lockbyte.cxx3
-rw-r--r--store/source/storbase.cxx3
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)