summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/dmapper/NumberingManager.cxx10
-rw-r--r--writerfilter/source/dmapper/NumberingManager.hxx3
2 files changed, 11 insertions, 2 deletions
diff --git a/writerfilter/source/dmapper/NumberingManager.cxx b/writerfilter/source/dmapper/NumberingManager.cxx
index 8754b489a9ec..809717e62659 100644
--- a/writerfilter/source/dmapper/NumberingManager.cxx
+++ b/writerfilter/source/dmapper/NumberingManager.cxx
@@ -119,6 +119,12 @@ void ListLevel::SetValue( Id nId, sal_Int32 nValue )
default:
OSL_FAIL( "this line should never be reached");
}
+ m_bHasValues = true;
+}
+
+bool ListLevel::HasValues() const
+{
+ return m_bHasValues;
}
void ListLevel::SetParaStyle( const std::shared_ptr< StyleSheetEntry >& pStyle )
@@ -467,9 +473,9 @@ uno::Sequence< uno::Sequence< beans::PropertyValue > > ListDef::GetPropertyValue
for ( sal_Int32 i = 0; i < nThisCount && i < nAbstractCount; i++ )
{
uno::Sequence< beans::PropertyValue > level = aThis[i];
- if ( level.hasElements() )
+ if (level.hasElements() && GetLevel(i)->HasValues())
{
- // If the element contains something, merge it
+ // If the element contains something, merge it, but ignore stub overrides.
lcl_mergeProperties( level, aAbstract[i] );
}
}
diff --git a/writerfilter/source/dmapper/NumberingManager.hxx b/writerfilter/source/dmapper/NumberingManager.hxx
index 026164122e85..eabf4a0276c6 100644
--- a/writerfilter/source/dmapper/NumberingManager.hxx
+++ b/writerfilter/source/dmapper/NumberingManager.hxx
@@ -52,6 +52,7 @@ class ListLevel : public PropertyMap
sal_Int32 m_nTabstop;
std::shared_ptr< StyleSheetEntry > m_pParaStyle;
bool m_outline;
+ bool m_bHasValues = false;
public:
@@ -80,6 +81,8 @@ public:
const OUString& GetBulletChar( ) { return m_sBulletChar; };
const std::shared_ptr< StyleSheetEntry >& GetParaStyle( ) { return m_pParaStyle; };
bool isOutlineNumbering() const { return m_outline; }
+ /// Determines if SetValue() was called at least once.
+ bool HasValues() const;
// UNO mapping functions