summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2012-07-26 11:19:43 +0200
committerMiklos Vajna <vmiklos@suse.cz>2012-07-26 13:21:30 +0200
commite0c5698f064d988baf906e8c9d87554b668fde92 (patch)
tree0b5a6b10ea79088d1f33502113e75c58be131ba4
parentc098c3e35ed22bc26841f4c3976b2fc02cdf4642 (diff)
RTF_MR: ignore if collected text is empty
Sending an empty run would result in adding a space to the formula, leading to incorrect result. Change-Id: I1a01493cead726f667db0065deb4c145cba4ffa7
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx16
1 files changed, 11 insertions, 5 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 3b0c4b4af9c5..e41ec9e31221 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -3616,11 +3616,17 @@ int RTFDocumentImpl::popState()
}
break;
case DESTINATION_MR:
- m_aMathBuffer.appendOpeningTag(M_TOKEN(r));
- m_aMathBuffer.appendOpeningTag(M_TOKEN(t));
- m_aMathBuffer.appendCharacters(m_aStates.top().aDestinationText.makeStringAndClear());
- m_aMathBuffer.appendClosingTag(M_TOKEN(t));
- m_aMathBuffer.appendClosingTag(M_TOKEN(r));
+ {
+ OUString aStr = m_aStates.top().aDestinationText.makeStringAndClear();
+ if (!aStr.isEmpty())
+ {
+ m_aMathBuffer.appendOpeningTag(M_TOKEN(r));
+ m_aMathBuffer.appendOpeningTag(M_TOKEN(t));
+ m_aMathBuffer.appendCharacters(aStr);
+ m_aMathBuffer.appendClosingTag(M_TOKEN(t));
+ m_aMathBuffer.appendClosingTag(M_TOKEN(r));
+ }
+ }
break;
case DESTINATION_MF: m_aMathBuffer.appendClosingTag(M_TOKEN(f)); break;
case DESTINATION_MFPR: m_aMathBuffer.appendClosingTag(M_TOKEN(fPr)); break;