diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2019-04-17 15:39:06 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2019-04-20 08:17:12 +0200 |
commit | bcb0c9b4bee1d943d9c60f9d4512dba901f85f54 (patch) | |
tree | 3b76714c3fa74fbcd4041d8ba6b60eee977e1030 /svl/qa | |
parent | ec7ba61a6164c805f5a71b077715b7e1521a2d62 (diff) |
flatten SfxItemPool_Impl (tdf#81765 related)
Flatten the vector of SfxPoolItemArray_Impl, to reduce pointer chasing.
This struct is movable, etc, so no need to allocate it separately on the
heap.
Change-Id: I794b4356660e9cd0e63bc98b011f58162a838662
Reviewed-on: https://gerrit.libreoffice.org/70884
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'svl/qa')
-rw-r--r-- | svl/qa/unit/items/test_itempool.cxx | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/svl/qa/unit/items/test_itempool.cxx b/svl/qa/unit/items/test_itempool.cxx index 9b5528532515..e08c77d01378 100644 --- a/svl/qa/unit/items/test_itempool.cxx +++ b/svl/qa/unit/items/test_itempool.cxx @@ -43,17 +43,17 @@ void PoolItemTest::testPool() SfxItemPool *pPool = new SfxItemPool("testpool", 1, 4, aItems); SfxItemPool_Impl *pImpl = SfxItemPool_Impl::GetImpl(pPool); CPPUNIT_ASSERT(pImpl != nullptr); - CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(4), pImpl->maPoolItems.size()); + CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(4), pImpl->maPoolItemArrays.size()); // Poolable SfxVoidItem aItemOne( 1 ); SfxVoidItem aNotherOne( 1 ); { - CPPUNIT_ASSERT(!pImpl->maPoolItems[0]); + CPPUNIT_ASSERT(pImpl->maPoolItemArrays[0].empty()); const SfxPoolItem &rVal = pPool->Put(aItemOne); CPPUNIT_ASSERT(bool(rVal == aItemOne)); - CPPUNIT_ASSERT(pImpl->maPoolItems[0] != nullptr); + CPPUNIT_ASSERT(!pImpl->maPoolItemArrays[0].empty()); const SfxPoolItem &rVal2 = pPool->Put(aNotherOne); CPPUNIT_ASSERT(bool(rVal2 == rVal)); CPPUNIT_ASSERT_EQUAL(&rVal, &rVal2); @@ -69,10 +69,10 @@ void PoolItemTest::testPool() SfxVoidItem aItemTwo( 2 ); SfxVoidItem aNotherTwo( 2 ); { - CPPUNIT_ASSERT(!pImpl->maPoolItems[1]); + CPPUNIT_ASSERT(pImpl->maPoolItemArrays[1].empty()); const SfxPoolItem &rVal = pPool->Put(aItemTwo); CPPUNIT_ASSERT(bool(rVal == aItemTwo)); - CPPUNIT_ASSERT(pImpl->maPoolItems[1] != nullptr); + CPPUNIT_ASSERT(!pImpl->maPoolItemArrays[1].empty()); const SfxPoolItem &rVal2 = pPool->Put(aNotherTwo); CPPUNIT_ASSERT(bool(rVal2 == rVal)); @@ -84,12 +84,12 @@ void PoolItemTest::testPool() SfxVoidItem aNotherFour(4); const SfxPoolItem &rKeyFour = pPool->Put(aRemoveFour); pPool->Put(aNotherFour); - CPPUNIT_ASSERT(pImpl->maPoolItems[3]->size() > 0); - CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), pImpl->maPoolItems[3]->size()); + CPPUNIT_ASSERT(pImpl->maPoolItemArrays[3].size() > 0); + CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), pImpl->maPoolItemArrays[3].size()); pPool->Remove(rKeyFour); - CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(1), pImpl->maPoolItems[3]->size()); + CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(1), pImpl->maPoolItemArrays[3].size()); pPool->Put(aNotherFour); - CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), pImpl->maPoolItems[3]->size()); + CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), pImpl->maPoolItemArrays[3].size()); } |