summaryrefslogtreecommitdiff
path: root/embedserv
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2021-03-09 09:54:16 +0100
committerStephan Bergmann <sbergman@redhat.com>2021-03-09 14:23:45 +0100
commitbbcf235753dc87ef6bc6652a77239513110e2d9e (patch)
tree0636b306f11ec31554ff4618547230de9c877977 /embedserv
parent5e8c0e2556eebfee7b2d75403cbf5cee6642e644 (diff)
loplugin:refcounting (clang-cl)
Change-Id: I91189ebd902b70e2fbe42fe8cc09b8677af1a5fb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112194 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'embedserv')
-rw-r--r--embedserv/source/embed/docholder.cxx8
-rw-r--r--embedserv/source/embed/ed_ipersiststr.cxx3
-rw-r--r--embedserv/source/inc/docholder.hxx2
-rw-r--r--embedserv/source/inc/embeddoc.hxx3
4 files changed, 7 insertions, 9 deletions
diff --git a/embedserv/source/embed/docholder.cxx b/embedserv/source/embed/docholder.cxx
index 762352579d94..3d322c3cf95e 100644
--- a/embedserv/source/embed/docholder.cxx
+++ b/embedserv/source/embed/docholder.cxx
@@ -63,6 +63,7 @@
#include <o3tl/any.hxx>
#include <osl/diagnose.h>
#include <rtl/process.h>
+#include <rtl/ref.hxx>
using namespace ::com::sun::star;
@@ -78,7 +79,6 @@ DocumentHolder::DocumentHolder(
m_pIOleIPUIWindow(nullptr),
m_pCHatchWin(nullptr),
m_xOleAccess( xOleAccess ),
- m_pInterceptor(nullptr),
m_xFactory( xFactory ),
m_bOnDeactivate(false),
m_hWndxWinParent(nullptr),
@@ -798,14 +798,14 @@ void DocumentHolder::ClearInterceptorInternally()
m_pInterceptor->DisconnectDocHolder();
m_xInterceptorLocker.clear();
- m_pInterceptor = nullptr;
+ m_pInterceptor.clear();
}
void DocumentHolder::ClearInterceptor()
{
::osl::MutexGuard aGuard( m_aMutex );
m_xInterceptorLocker.clear();
- m_pInterceptor = nullptr;
+ m_pInterceptor.clear();
}
@@ -967,7 +967,7 @@ void DocumentHolder::setTitle(const OUString& aDocumentName)
{
::osl::ClearableMutexGuard aGuard( m_aMutex );
- Interceptor* pTmpInter = nullptr;
+ rtl::Reference<Interceptor> pTmpInter;
uno::Reference< frame::XDispatchProviderInterceptor > xLock( m_xInterceptorLocker );
if ( xLock.is() && m_pInterceptor )
pTmpInter = m_pInterceptor;
diff --git a/embedserv/source/embed/ed_ipersiststr.cxx b/embedserv/source/embed/ed_ipersiststr.cxx
index 1ccb2bc28a05..df5f412593a4 100644
--- a/embedserv/source/embed/ed_ipersiststr.cxx
+++ b/embedserv/source/embed/ed_ipersiststr.cxx
@@ -175,7 +175,6 @@ EmbedDocument_Impl::EmbedDocument_Impl( const uno::Reference< lang::XMultiServic
{
m_xOwnAccess = new EmbeddedDocumentInstanceAccess_Impl( this );
m_pDocHolder = new DocumentHolder( xFactory, m_xOwnAccess );
- m_pDocHolder->acquire();
}
EmbedDocument_Impl::~EmbedDocument_Impl()
@@ -192,8 +191,6 @@ EmbedDocument_Impl::~EmbedDocument_Impl()
m_pDocHolder->CloseDocument();
m_pDocHolder->CloseFrame();
}
-
- m_pDocHolder->release();
}
uno::Sequence< beans::PropertyValue > EmbedDocument_Impl::fillArgsForLoading_Impl( uno::Reference< io::XInputStream > const & xStream, DWORD /*nStreamMode*/, LPCOLESTR pFilePath )
diff --git a/embedserv/source/inc/docholder.hxx b/embedserv/source/inc/docholder.hxx
index 7cb85af0fbf6..0c0816cc625f 100644
--- a/embedserv/source/inc/docholder.hxx
+++ b/embedserv/source/inc/docholder.hxx
@@ -62,7 +62,7 @@ private:
::rtl::Reference< EmbeddedDocumentInstanceAccess_Impl > m_xOleAccess;
css::uno::WeakReference< css::frame::XDispatchProviderInterceptor > m_xInterceptorLocker;
- Interceptor* m_pInterceptor;
+ rtl::Reference<Interceptor> m_pInterceptor;
css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
diff --git a/embedserv/source/inc/embeddoc.hxx b/embedserv/source/inc/embeddoc.hxx
index eb9df82fd441..34d2bba1bfd0 100644
--- a/embedserv/source/inc/embeddoc.hxx
+++ b/embedserv/source/inc/embeddoc.hxx
@@ -26,6 +26,7 @@
#include <com/sun/star/uno/Reference.h>
#include <com/sun/star/uno/Sequence.h>
+#include <rtl/ref.hxx>
#include <unordered_map>
#include "embeddocaccess.hxx"
@@ -152,7 +153,7 @@ protected:
css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
- DocumentHolder* m_pDocHolder;
+ rtl::Reference<DocumentHolder> m_pDocHolder;
OUString m_aFileName;
CComPtr< IStorage > m_pMasterStorage;