diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-07-29 09:18:16 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-07-29 09:20:32 +0100 |
commit | f9ae1b31f7791fba71f74af126cc061a048e12f8 (patch) | |
tree | 951533dedc9a7bb105b880f9390a7418866a1f26 | |
parent | 0dd22165346f4296718656d17ae98ebbfe563719 (diff) |
fftester: another null DestinationText
Change-Id: I84bf3788ac092c491d7c5a9f86421f1cf9f3e814
-rw-r--r-- | writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-1.rtf (renamed from writerfilter/qa/cppunittests/rtftok/data/pass/destinationtest-1.rtf) | bin | 196 -> 196 bytes | |||
-rw-r--r-- | writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-2.rtf | bin | 0 -> 155 bytes | |||
-rw-r--r-- | writerfilter/source/rtftok/rtfdocumentimpl.cxx | 39 |
3 files changed, 20 insertions, 19 deletions
diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/destinationtest-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-1.rtf Binary files differindex 63465b073627..63465b073627 100644 --- a/writerfilter/qa/cppunittests/rtftok/data/pass/destinationtest-1.rtf +++ b/writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-1.rtf diff --git a/writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-2.rtf b/writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-2.rtf Binary files differnew file mode 100644 index 000000000000..f0152b0fab36 --- /dev/null +++ b/writerfilter/qa/cppunittests/rtftok/data/fail/destinationtest-2.rtf diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index e3cd2b9f8bef..909dc8643fc5 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -190,26 +190,27 @@ static util::DateTime lcl_getDateTime(RTFParserState& aState) aState.nDay, aState.nMonth, aState.nYear, false); } -static void lcl_DestinationToMath(OUStringBuffer& rDestinationText, oox::formulaimport::XmlStreamBuilder& rMathBuffer, bool& rMathNor) +static void lcl_DestinationToMath(OUStringBuffer* pDestinationText, oox::formulaimport::XmlStreamBuilder& rMathBuffer, bool& rMathNor) { - OUString aStr = rDestinationText.makeStringAndClear(); - if (!aStr.isEmpty()) + if (!pDestinationText) + return; + OUString aStr = pDestinationText->makeStringAndClear(); + if (aStr.isEmpty()) + return; + rMathBuffer.appendOpeningTag(M_TOKEN(r)); + if (rMathNor) { - rMathBuffer.appendOpeningTag(M_TOKEN(r)); - if (rMathNor) - { - rMathBuffer.appendOpeningTag(M_TOKEN(rPr)); - // Same as M_TOKEN(lit) - rMathBuffer.appendOpeningTag(M_TOKEN(nor)); - rMathBuffer.appendClosingTag(M_TOKEN(nor)); - rMathBuffer.appendClosingTag(M_TOKEN(rPr)); - rMathNor = false; - } - rMathBuffer.appendOpeningTag(M_TOKEN(t)); - rMathBuffer.appendCharacters(aStr); - rMathBuffer.appendClosingTag(M_TOKEN(t)); - rMathBuffer.appendClosingTag(M_TOKEN(r)); + rMathBuffer.appendOpeningTag(M_TOKEN(rPr)); + // Same as M_TOKEN(lit) + rMathBuffer.appendOpeningTag(M_TOKEN(nor)); + rMathBuffer.appendClosingTag(M_TOKEN(nor)); + rMathBuffer.appendClosingTag(M_TOKEN(rPr)); + rMathNor = false; } + rMathBuffer.appendOpeningTag(M_TOKEN(t)); + rMathBuffer.appendCharacters(aStr); + rMathBuffer.appendClosingTag(M_TOKEN(t)); + rMathBuffer.appendClosingTag(M_TOKEN(r)); } RTFDocumentImpl::RTFDocumentImpl(uno::Reference<uno::XComponentContext> const& xContext, @@ -1768,7 +1769,7 @@ RTFError RTFDocumentImpl::pushState() m_aStates.top().eRunType = RTFParserState::RunType::LOCH; if (m_aStates.top().eDestination == Destination::MR) - lcl_DestinationToMath(*m_aStates.top().pDestinationText, m_aMathBuffer, m_bMathNor); + lcl_DestinationToMath(m_aStates.top().pDestinationText, m_aMathBuffer, m_bMathNor); m_aStates.push(m_aStates.top()); } m_aStates.top().aDestinationText.setLength(0); // was copied: always reset! @@ -2463,7 +2464,7 @@ RTFError RTFDocumentImpl::popState() } break; case Destination::MR: - lcl_DestinationToMath(*m_aStates.top().pDestinationText, m_aMathBuffer, m_bMathNor); + lcl_DestinationToMath(m_aStates.top().pDestinationText, m_aMathBuffer, m_bMathNor); break; case Destination::MF: m_aMathBuffer.appendClosingTag(M_TOKEN(f)); |