summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2012-03-23 12:47:41 +0100
committerMichael Stahl <mstahl@redhat.com>2012-04-02 22:08:54 +0200
commitb2d8d2d3cacbfc6d505248b81ea0e94272def439 (patch)
treede8136f8ad7d9879c4081f1ed260f30d01c32c4a
parentshow synchronized checked only if all margins are the same, related fdo#44337 (diff)
downloadcore-b2d8d2d3cacbfc6d505248b81ea0e94272def439.tar.gz
core-b2d8d2d3cacbfc6d505248b81ea0e94272def439.zip
fdo#47326 fix RTF import of mixed super/nonsuper text
In most cases \super has its own group, but it's valid to have mixed super and non-super text in a single group, as long as \super and \nosupersub keywords are used: handle this. (backport of f84e0e6b1b0ec5f52ee963a62ac420cd872a771e) Signed-off-by: Michael Stahl <mstahl@redhat.com>
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 241e05d7dfce..d5d8ee6c30dc 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -1950,6 +1950,14 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
m_aStates.top().aCharacterSprms->push_back(make_pair(NS_ooxml::LN_EG_RPrBase_vertAlign, pValue));
}
break;
+ case RTF_NOSUPERSUB:
+ if (m_pCurrentBuffer == &m_aSuperBuffer)
+ {
+ replayBuffer(m_aSuperBuffer);
+ m_pCurrentBuffer = 0;
+ }
+ m_aStates.top().aCharacterSprms.erase(NS_ooxml::LN_EG_RPrBase_vertAlign);
+ break;
case RTF_LINEPPAGE:
case RTF_LINECONT:
{