summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-05-26 15:28:31 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-05-26 15:39:52 +0200
commit21c11ffe254612ac46aa891addacb0024d5b93f0 (patch)
tree96d36c2d9e689b6d5df9dfd22119cf567a0f6c4e /writerfilter
parentef334d5acafd918437fbc5d0555a5e161059feb1 (diff)
fdo#78900 RTF import: allow \dpxsize inside \dptxbxtext
Previously we assumed that they always appear under \do directly. Change-Id: Ie3a978da856986f604a3815d6127abb4191323c0
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx11
1 files changed, 11 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 42636bc79ee7..cc99fbc8f05e 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -5580,6 +5580,17 @@ int RTFDocumentImpl::popState()
m_aStates.top().pCurrentBuffer->push_back(
Buf_t(BUFFER_ENDSHAPE));
}
+
+ // It's allowed to declare these inside the the shape text, and they
+ // are expected to have an effect for the whole shape.
+ if (aState.aDrawingObject.nLeft)
+ m_aStates.top().aDrawingObject.nLeft = aState.aDrawingObject.nLeft;
+ if (aState.aDrawingObject.nTop)
+ m_aStates.top().aDrawingObject.nTop = aState.aDrawingObject.nTop;
+ if (aState.aDrawingObject.nRight)
+ m_aStates.top().aDrawingObject.nRight = aState.aDrawingObject.nRight;
+ if (aState.aDrawingObject.nBottom)
+ m_aStates.top().aDrawingObject.nBottom = aState.aDrawingObject.nBottom;
break;
default:
{