summaryrefslogtreecommitdiff
path: root/writerfilter/source
diff options
context:
space:
mode:
authorVasily Melenchuk <vasily.melenchuk@cib.de>2022-03-10 12:04:20 +0300
committerXisco Fauli <xiscofauli@libreoffice.org>2022-03-16 11:44:17 +0100
commitb6fed2ef5b5a30a3364eccec27991e26c86254ee (patch)
tree809bda6093387edb1cd33b2f75a8c5f4d14f80a4 /writerfilter/source
parentdc566a7f687a728311490b5f4f624897f0aefd1d (diff)
tdf#146851: writerfilter: do not recreate list levels on override
AddLevel() can be called on w:lvl and on w:lvlOverride. But if we have level override and some extra level definition level is recreated and override information is lost. Change-Id: I6f1b9b50bdd3410b4ae2d403e760e4d6df5677d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131304 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131647 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Diffstat (limited to 'writerfilter/source')
-rw-r--r--writerfilter/source/dmapper/NumberingManager.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/writerfilter/source/dmapper/NumberingManager.cxx b/writerfilter/source/dmapper/NumberingManager.cxx
index 8829aa52697f..1c79e0eece99 100644
--- a/writerfilter/source/dmapper/NumberingManager.cxx
+++ b/writerfilter/source/dmapper/NumberingManager.cxx
@@ -371,9 +371,12 @@ void AbstractListDef::AddLevel( sal_uInt16 nLvl )
if ( nLvl >= m_aLevels.size() )
m_aLevels.resize( nLvl+1 );
- ListLevel::Pointer pLevel( new ListLevel );
- m_pCurrentLevel = pLevel;
- m_aLevels[nLvl] = pLevel;
+ if (!m_aLevels[nLvl])
+ {
+ m_aLevels[nLvl] = new ListLevel;
+ }
+
+ m_pCurrentLevel = m_aLevels[nLvl];
}
uno::Sequence<uno::Sequence<beans::PropertyValue>> AbstractListDef::GetPropertyValues(bool bDefaults)