diff options
author | Miklos Vajna <vmiklos@suse.cz> | 2012-07-26 11:19:43 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2012-07-26 13:21:30 +0200 |
commit | e0c5698f064d988baf906e8c9d87554b668fde92 (patch) | |
tree | 0b5a6b10ea79088d1f33502113e75c58be131ba4 | |
parent | c098c3e35ed22bc26841f4c3976b2fc02cdf4642 (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.cxx | 16 |
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; |