[Libreoffice-commits] core.git: writerfilter/qa writerfilter/source

Caolán McNamara caolanm at redhat.com
Sat Sep 10 12:37:21 UTC 2016


 writerfilter/qa/cppunittests/rtftok/data/pass/parser-state-1.rtf |binary
 writerfilter/source/rtftok/rtfdocumentimpl.cxx                   |    8 ++++----
 writerfilter/source/rtftok/rtfdocumentimpl.hxx                   |    3 ++-
 3 files changed, 6 insertions(+), 5 deletions(-)

New commits:
commit 44d4d9d4e998de9b4dc939af4fa40e51e6300951
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Sep 10 11:47:16 2016 +0100

    fftester: use of deleted RTFParserState
    
    but we only use the RTFParserState to use its m_pDocumentImpl and
    the m_pDocumentImpl is never changed for the RTFParserState lifetime,
    so take the m_pDocumentImpl at ctor time instead and use that
    directly later
    
    Change-Id: I15152e3f6d9008553b4a384a5e5da21373904cc9
    Reviewed-on: https://gerrit.libreoffice.org/28802
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/writerfilter/qa/cppunittests/rtftok/data/pass/parser-state-1.rtf b/writerfilter/qa/cppunittests/rtftok/data/pass/parser-state-1.rtf
new file mode 100644
index 0000000..3fe4b28
Binary files /dev/null and b/writerfilter/qa/cppunittests/rtftok/data/pass/parser-state-1.rtf differ
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 0dd4fc9..60872d3 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -3294,7 +3294,7 @@ RTFDrawingObject::RTFDrawingObject()
 }
 
 RTFFrame::RTFFrame(RTFParserState* pParserState)
-    : m_pParserState(pParserState),
+    : m_pDocumentImpl(pParserState->m_pDocumentImpl),
       m_nX(0),
       m_nY(0),
       m_nW(0),
@@ -3312,10 +3312,10 @@ RTFFrame::RTFFrame(RTFParserState* pParserState)
 
 void RTFFrame::setSprm(Id nId, Id nValue)
 {
-    if (m_pParserState->m_pDocumentImpl->getFirstRun() && !m_pParserState->m_pDocumentImpl->isStyleSheetImport())
+    if (m_pDocumentImpl->getFirstRun() && !m_pDocumentImpl->isStyleSheetImport())
     {
-        m_pParserState->m_pDocumentImpl->checkFirstRun();
-        m_pParserState->m_pDocumentImpl->setNeedPar(false);
+        m_pDocumentImpl->checkFirstRun();
+        m_pDocumentImpl->setNeedPar(false);
     }
     switch (nId)
     {
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
index f2294aa..91ba7ee 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
@@ -182,12 +182,13 @@ public:
 };
 
 class RTFParserState;
+class RTFDocumentImpl;
 
 /// Stores the properties of a frame
 class RTFFrame
 {
 private:
-    RTFParserState* m_pParserState;
+    RTFDocumentImpl* m_pDocumentImpl;
     sal_Int32 m_nX, m_nY, m_nW, m_nH;
     sal_Int32 m_nHoriPadding, m_nVertPadding;
     sal_Int32 m_nHoriAlign, m_nHoriAnchor, m_nVertAlign, m_nVertAnchor;


More information about the Libreoffice-commits mailing list