summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-07-29 21:24:26 +0100
committerAndras Timar <andras.timar@collabora.com>2016-08-15 10:25:46 +0200
commitd07f93ee56b92a76b88bd7d932186e5da3871d98 (patch)
tree199cba5b8bfdcc13c5b2348794e6d783cc27086c /writerfilter
parent613d8f32f0f8810e64c1308a0af0239421f9f8ce (diff)
fftester: another empty table manager stack
Change-Id: If3148cb6e16cff4aad28c4f86467c66ed04bcd05 (cherry picked from commit d00fc303bca7765762a602531b7d3b40ce8f1740) Reviewed-on: https://gerrit.libreoffice.org/27704 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> (cherry picked from commit a63b63f59f83c81efc7c6d5c33da421bddaec62a)
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-2.rtfbin0 -> 121 bytes
-rw-r--r--writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-3.rtfbin0 -> 54 bytes
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx9
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx7
4 files changed, 10 insertions, 6 deletions
diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-2.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-2.rtf
new file mode 100644
index 000000000000..58328edc97db
--- /dev/null
+++ b/writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-2.rtf
Binary files differ
diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-3.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-3.rtf
new file mode 100644
index 000000000000..9fd58921468a
--- /dev/null
+++ b/writerfilter/qa/cppunittests/rtftok/data/pass/tablemanager-3.rtf
Binary files differ
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index bddedddd1420..268017e0b74b 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -213,7 +213,7 @@ DomainMapper::~DomainMapper()
void DomainMapper::lcl_attribute(Id nName, Value & val)
{
- if (m_pImpl->getTableManager().attribute(nName, val))
+ if (m_pImpl->hasTableManager() && m_pImpl->getTableManager().attribute(nName, val))
return;
static const int nSingleLineSpacing = 240;
@@ -414,7 +414,7 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
else
aSpacing.Height = sal_Int16(ConversionHelper::convertTwipToMM100( nIntValue ));
- if( m_pImpl->getTableManager().isInCell() )
+ if (m_pImpl->hasTableManager() && m_pImpl->getTableManager().isInCell())
{
// direct formatting is applied for table cell data
TablePropertyMapPtr pTblCellWithDirectFormatting(new TablePropertyMap);
@@ -443,7 +443,7 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
aSpacing.Mode = style::LineSpacingMode::FIX;
}
- if( m_pImpl->getTableManager().isInCell() )
+ if (m_pImpl->hasTableManager() && m_pImpl->getTableManager().isInCell())
{
// If the table manager got the line rule after
// ooxml::CT_Spacing_line, then it should get the rule
@@ -2927,7 +2927,8 @@ void DomainMapper::lcl_endShape( )
// empty paragraph at the end of the shape text will cause problems: if
// the shape text ends with a table, the extra paragraph will be
// handled as an additional row of the ending table.
- m_pImpl->getTableManager().endTable();
+ if (m_pImpl->hasTableManager())
+ m_pImpl->getTableManager().endTable();
lcl_endParagraphGroup();
m_pImpl->PopShapeContext( );
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index e3a521991e69..7567d079fb47 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -2017,8 +2017,11 @@ void DomainMapper_Impl::UpdateEmbeddedShapeProps(const uno::Reference< drawing::
void DomainMapper_Impl::PopShapeContext()
{
- getTableManager().endLevel();
- popTableManager();
+ if (hasTableManager())
+ {
+ getTableManager().endLevel();
+ popTableManager();
+ }
if ( m_aAnchoredStack.size() > 0 )
{
// For OLE object replacement shape, the text append context was already removed