diff options
author | Noel Grandin <noelgrandin@gmail.com> | 2021-09-19 11:13:53 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-09-20 17:48:08 +0200 |
commit | afd918a81bc2dce4830bc94cbd88b9038f5715ff (patch) | |
tree | 5d6d46d4c149be04b34066f15fff470d19ec9127 /solenv | |
parent | 88b72d85ef82a5a6ca019ef9b88f5389db067c83 (diff) |
introduce SfxItemSetFixed and use it in DefaultProperties
DefaultProperties::SetObjectItemSet is very hot when loading
shapes, and a large chunk of that cost is allocating the pool item
array.
So use a template class to allocate the array in-line to the class,
which means it can be allocated on-stack.
Change-Id: Ic53b41f35784726362de38fceb35f8634cddf0a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122310
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'solenv')
-rw-r--r-- | solenv/gdb/libreoffice/svl.py | 2 | ||||
-rw-r--r-- | solenv/vs/LibreOffice.natvis | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/solenv/gdb/libreoffice/svl.py b/solenv/gdb/libreoffice/svl.py index 28ca2997e5d7..f82b02a7b4a3 100644 --- a/solenv/gdb/libreoffice/svl.py +++ b/solenv/gdb/libreoffice/svl.py @@ -39,7 +39,7 @@ class ItemSetPrinter(object): for (whichfrom, whichto) in whichranges: size += whichto - whichfrom + 1 whichids += [which for which in range(whichfrom, whichto+1)] - return self._iterator(self.value['m_pItems']['_M_t']['_M_t']['_M_head_impl'], size, whichids) + return self._iterator(self.value['m_ppItems'], size, whichids) class _iterator(six.Iterator): diff --git a/solenv/vs/LibreOffice.natvis b/solenv/vs/LibreOffice.natvis index ee4171bac9cf..0962c1c441fb 100644 --- a/solenv/vs/LibreOffice.natvis +++ b/solenv/vs/LibreOffice.natvis @@ -340,7 +340,7 @@ <DisplayString>{{size={m_nCount,d}}}</DisplayString> <Expand> <CustomListItems> - <Variable Name='pCurItem' InitialValue='m_pItems._Mypair._Myval2'/> + <Variable Name='pCurItem' InitialValue='m_ppItems'/> <Variable Name='nRanges' InitialValue='m_pWhichRanges.m_size'/> <Variable Name='nCurRange' InitialValue='0'/> <Variable Name='nCurWhich' InitialValue='0'/> |