summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorUrmas <davian818@gmail.com>2013-05-27 09:49:55 +0200
committerMiklos Vajna <vmiklos@suse.cz>2013-05-27 13:47:07 +0200
commit25f70433aa0f1c9d98fc92cb2d896e8e887bfb4b (patch)
treef1c52af94c9528c35849158e8115d77fd9e0eb01 /writerfilter
parent5651e793d2a55e3ab7f4e731252d7c678f1e37c0 (diff)
fdo#64671 Some special RTF characters were not skipped correctly
Some special characters, like { and }, were not skipped when they occured as a replacement character for \uN keyword. Change-Id: I19b66a290cd9880924774fa89bb29df280e44a3c (cherry picked from commit bfb93ffc6d72d22a833acf9d8c9d166153dad7c0) Signed-off-by: Miklos Vajna <vmiklos@suse.cz>
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx2
1 files changed, 1 insertions, 1 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index a5e3f755cda4..fcd0ef5db2b1 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -887,7 +887,7 @@ int RTFDocumentImpl::resolveChars(char ch)
bool bUnicodeChecked = false;
bool bSkipped = false;
- while(!Strm().IsEof() && ch != '{' && ch != '}' && ch != '\\')
+ while(!Strm().IsEof() && (m_aStates.top().nInternalState == INTERNAL_HEX || (ch != '{' && ch != '}' && ch != '\\')))
{
if (m_aStates.top().nInternalState == INTERNAL_HEX || (ch != 0x0d && ch != 0x0a))
{