diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2015-12-06 21:39:11 +1000 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-12-07 09:37:39 +0000 |
commit | a800cc780b60d61fd871ec5598c80a431e13903f (patch) | |
tree | 41f5c736e355879b2eb53c9640b5bb6aa2f84502 /writerfilter | |
parent | a1c9165eec98cc0021e5a95efed79a9972cbf0e3 (diff) |
tdf#54584: allow backslash before field type in RTF and DOCX
In some RTF and DOCX files, field type may be prepended with
backslash. It seems not strictly standard-conformant (at least
not to [MS-RTF]). Still, MS Word reads these fields OK. This patch
allows LO to read them, too.
Change-Id: I1f6bbdd9d57adbea8882d078761dd97298ca03b3
Reviewed-on: https://gerrit.libreoffice.org/20420
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index 2d858d4701a1..8e079ea04acc 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -2292,6 +2292,13 @@ lcl_SplitFieldCommand(const OUString& rCommand) std::vector<OUString> arguments; std::vector<OUString> switches; sal_Int32 nStartIndex(0); + // tdf#54584: Field may be prepended by a backslash - skip it + if ((rCommand.getLength() >= nStartIndex + 2) && + (rCommand[nStartIndex] == '\\') && + (rCommand[nStartIndex + 1] != '\\')) + { + ++nStartIndex; + } do { |