[Libreoffice-commits] core.git: sw/inc sw/source
Noel Grandin
noel.grandin at collabora.co.uk
Wed Jan 25 08:34:51 UTC 2017
sw/inc/unotxdoc.hxx | 4 ++--
sw/source/uibase/uno/unotxdoc.cxx | 17 +++++++----------
2 files changed, 9 insertions(+), 12 deletions(-)
New commits:
commit d49e497a6bd07e487149d65ab63138ce4aff73a4
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date: Wed Jan 25 10:16:58 2017 +0200
use rtl::Reference in SwXTextDocument
instead of storing both a raw pointer and an uno::Reference
Change-Id: I94746e7fafcc7d2206ac0c1a6481e6006421529b
diff --git a/sw/inc/unotxdoc.hxx b/sw/inc/unotxdoc.hxx
index 36ef233..e4aa5206 100644
--- a/sw/inc/unotxdoc.hxx
+++ b/sw/inc/unotxdoc.hxx
@@ -61,6 +61,7 @@
#include <com/sun/star/text/XFlatParagraphIteratorProvider.hpp>
#include <com/sun/star/document/XDocumentLanguages.hpp>
#include <com/sun/star/util/XCloneable.hpp>
+#include <rtl/ref.hxx>
#include <svl/itemprop.hxx>
#include <svx/fmdmod.hxx>
#include <editeng/UnoForbiddenCharsTable.hxx>
@@ -174,8 +175,7 @@ private:
//temporary frame to enable PDF export if no valid view is available
SfxViewFrame* m_pHiddenViewFrame;
- css::uno::Reference< css::uno::XInterface> xPropertyHelper;
- SwXDocumentPropertyHelper* pPropertyHelper;
+ rtl::Reference<SwXDocumentPropertyHelper> mxPropertyHelper;
SwPrintUIOptions * m_pPrintUIOptions;
SwRenderData * m_pRenderData;
diff --git a/sw/source/uibase/uno/unotxdoc.cxx b/sw/source/uibase/uno/unotxdoc.cxx
index 2c81a20..a1ca0a0 100644
--- a/sw/source/uibase/uno/unotxdoc.cxx
+++ b/sw/source/uibase/uno/unotxdoc.cxx
@@ -422,7 +422,6 @@ SwXTextDocument::SwXTextDocument(SwDocShell* pShell)
mxLinkTargetSupplier(),
mxXRedlines(),
m_pHiddenViewFrame(nullptr),
- pPropertyHelper(nullptr),
m_pPrintUIOptions( nullptr ),
m_pRenderData( nullptr ),
// #i117783#
@@ -452,12 +451,11 @@ SwXTextDocument::~SwXTextDocument()
SwXDocumentPropertyHelper * SwXTextDocument::GetPropertyHelper ()
{
- if(!xPropertyHelper.is())
+ if(!mxPropertyHelper.is())
{
- pPropertyHelper = new SwXDocumentPropertyHelper(*pDocShell->GetDoc());
- xPropertyHelper = static_cast<cppu::OWeakObject*>(pPropertyHelper);
+ mxPropertyHelper = new SwXDocumentPropertyHelper(*pDocShell->GetDoc());
}
- return pPropertyHelper;
+ return mxPropertyHelper.get();
}
void SwXTextDocument::GetNumberFormatter()
@@ -1600,11 +1598,10 @@ void SwXTextDocument::InitNewDoc()
static_cast<SwXRedlines*>(pMarks)->Invalidate();
mxXRedlines.clear();
}
- if(xPropertyHelper.is())
+ if(mxPropertyHelper.is())
{
- pPropertyHelper->Invalidate();
- xPropertyHelper = nullptr;
- pPropertyHelper = nullptr;
+ mxPropertyHelper->Invalidate();
+ mxPropertyHelper.clear();
}
}
@@ -2064,7 +2061,7 @@ Any SwXTextDocument::getPropertyValue(const OUString& rPropertyName)
case WID_DOC_FORBIDDEN_CHARS:
{
GetPropertyHelper();
- Reference<XForbiddenCharacters> xRet(xPropertyHelper, UNO_QUERY);
+ Reference<XForbiddenCharacters> xRet(static_cast<cppu::OWeakObject*>(mxPropertyHelper.get()), UNO_QUERY);
aAny <<= xRet;
}
break;
More information about the Libreoffice-commits
mailing list