diff options
Diffstat (limited to 'svl')
-rw-r--r-- | svl/source/inc/poolio.hxx | 4 | ||||
-rw-r--r-- | svl/source/items/itempool.cxx | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/svl/source/inc/poolio.hxx b/svl/source/inc/poolio.hxx index ec3ec8349c78..627fd6ba62ab 100644 --- a/svl/source/inc/poolio.hxx +++ b/svl/source/inc/poolio.hxx @@ -58,6 +58,8 @@ struct SfxPoolVersion_Impl {} }; +typedef std::vector<SfxPoolItem*> SfxPoolItemArrayBase_Impl; + typedef std::shared_ptr< SfxPoolVersion_Impl > SfxPoolVersion_ImplPtr; /** @@ -110,7 +112,7 @@ struct SfxItemPool_Impl bool mbPersistentRefCounts; SfxItemPool_Impl( SfxItemPool* pMaster, const OUString& rName, sal_uInt16 nStart, sal_uInt16 nEnd ) - : maPoolItems(nEnd - nStart + 1) + : maPoolItems(nEnd - nStart + 1, static_cast<SfxPoolItemArray_Impl*>(nullptr)) , aName(rName) , maPoolDefaults(nEnd - nStart + 1) , ppStaticDefaults(nullptr) diff --git a/svl/source/items/itempool.cxx b/svl/source/items/itempool.cxx index 7a38d451acf7..6f4a6f210ad7 100644 --- a/svl/source/items/itempool.cxx +++ b/svl/source/items/itempool.cxx @@ -646,7 +646,7 @@ const SfxPoolItem& SfxItemPool::Put( const SfxPoolItem& rItem, sal_uInt16 nWhich pItemArr = pImpl->maPoolItems[nIndex]; } - std::vector<SfxPoolItem*>::iterator ppFree; + SfxPoolItemArrayBase_Impl::iterator ppFree; bool ppFreeIsSet = false; // Is this a 'poolable' item - ie. should we re-use and return @@ -693,7 +693,7 @@ const SfxPoolItem& SfxItemPool::Put( const SfxPoolItem& rItem, sal_uInt16 nWhich // Unconditionally insert; check for a recently freed place if (pItemArr->maFree.size() > 0) { - auto itr = pItemArr->begin(); + SfxPoolItemArrayBase_Impl::iterator itr = pItemArr->begin(); sal_uInt32 nIdx = pItemArr->maFree.back(); pItemArr->maFree.pop_back(); |