canvas/inc/base/cachedprimitivebase.hxx     |    9 ++++-----
 canvas/source/cairo/cairo_cachedbitmap.cxx  |    6 ++----
 canvas/source/cairo/cairo_cachedbitmap.hxx  |    2 +-
 canvas/source/tools/cachedprimitivebase.cxx |    5 +----
 canvas/source/vcl/cachedbitmap.cxx          |    6 ++----
 canvas/source/vcl/cachedbitmap.hxx          |    2 +-
 6 files changed, 11 insertions(+), 19 deletions(-)

New commits:
commit a1d3a0f8ec2107da739f50ae0606d176c28a32d0
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Tue Feb 21 15:49:49 2023 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Wed Feb 22 10:15:29 2023 +0000

    BaseMutex->std::mutex in canvas::CachedPrimitiveBase
    
    Change-Id: I9f7c23a4880ea09f3c9a98ad7d27b27bf35483ed
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147421
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/canvas/inc/base/cachedprimitivebase.hxx 
b/canvas/inc/base/cachedprimitivebase.hxx
index 49c808b34068..d5003e78b850 100644
--- a/canvas/inc/base/cachedprimitivebase.hxx
+++ b/canvas/inc/base/cachedprimitivebase.hxx
@@ -23,8 +23,7 @@
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/rendering/XCachedPrimitive.hpp>
 #include <com/sun/star/rendering/ViewState.hpp>
-#include <cppuhelper/compbase.hxx>
-#include <cppuhelper/basemutex.hxx>
+#include <comphelper/compbase.hxx>
 
 #include <canvas/canvastoolsdllapi.h>
 
@@ -34,14 +33,14 @@ namespace com::sun::star::rendering { class XCanvas; }
 
 namespace canvas
 {
-    typedef cppu::WeakComponentImplHelper< css::rendering::XCachedPrimitive,
+    typedef comphelper::WeakComponentImplHelper< 
css::rendering::XCachedPrimitive,
                                            css::lang::XServiceInfo > 
CachedPrimitiveBase_Base;
 
     /** Base class, providing common functionality for implementers of
         the XCachedPrimitive interface.
      */
     class CANVASTOOLS_DLLPUBLIC CachedPrimitiveBase:
-        public cppu::BaseMutex, public CachedPrimitiveBase_Base
+        public CachedPrimitiveBase_Base
     {
     public:
 
@@ -57,7 +56,7 @@ namespace canvas
                              css::uno::Reference< css::rendering::XCanvas > 
xTarget );
 
         /// Dispose all internal references
-        virtual void SAL_CALL disposing() override;
+        virtual void disposing(std::unique_lock<std::mutex>& rGuard) override;
 
         // XCachedPrimitive
         virtual ::sal_Int8 SAL_CALL redraw( const css::rendering::ViewState& 
aState ) override;
diff --git a/canvas/source/cairo/cairo_cachedbitmap.cxx 
b/canvas/source/cairo/cairo_cachedbitmap.cxx
index d829e27ac3b5..e548778b2fe4 100644
--- a/canvas/source/cairo/cairo_cachedbitmap.cxx
+++ b/canvas/source/cairo/cairo_cachedbitmap.cxx
@@ -42,12 +42,10 @@ namespace cairocanvas
         maRenderState(std::move( aUsedRenderState ))
     {}
 
-    void SAL_CALL CachedBitmap::disposing()
+    void CachedBitmap::disposing(std::unique_lock<std::mutex>& rGuard)
     {
-        ::osl::MutexGuard aGuard( m_aMutex );
-
         mpSurface.reset();
-        CachedPrimitiveBase::disposing();
+        CachedPrimitiveBase::disposing(rGuard);
     }
 
     ::sal_Int8 CachedBitmap::doRedraw( const rendering::ViewState&             
     rNewState,
diff --git a/canvas/source/cairo/cairo_cachedbitmap.hxx 
b/canvas/source/cairo/cairo_cachedbitmap.hxx
index 159b54bc2a20..d7f4c58ef681 100644
--- a/canvas/source/cairo/cairo_cachedbitmap.hxx
+++ b/canvas/source/cairo/cairo_cachedbitmap.hxx
@@ -40,7 +40,7 @@ namespace cairocanvas
                       const css::uno::Reference< css::rendering::XCanvas >&  
rTarget   );
 
         /// Dispose all internal references
-        virtual void SAL_CALL disposing() override;
+        virtual void disposing(std::unique_lock<std::mutex>& rGuard) override;
 
     private:
         virtual ::sal_Int8 doRedraw( const css::rendering::ViewState&  
rNewState,
diff --git a/canvas/source/tools/cachedprimitivebase.cxx 
b/canvas/source/tools/cachedprimitivebase.cxx
index 652e9c900613..7aaf3d58ac5e 100644
--- a/canvas/source/tools/cachedprimitivebase.cxx
+++ b/canvas/source/tools/cachedprimitivebase.cxx
@@ -34,7 +34,6 @@ namespace canvas
 {
     CachedPrimitiveBase::CachedPrimitiveBase( rendering::ViewState             
       aUsedViewState,
                                               uno::Reference< 
rendering::XCanvas >    xTarget ) :
-        CachedPrimitiveBase_Base( m_aMutex ),
         maUsedViewState(std::move( aUsedViewState )),
         mxTarget(std::move( xTarget ))
     {
@@ -44,10 +43,8 @@ namespace canvas
     {
     }
 
-    void SAL_CALL CachedPrimitiveBase::disposing()
+    void CachedPrimitiveBase::disposing(std::unique_lock<std::mutex>& 
/*rGuard*/)
     {
-        ::osl::MutexGuard aGuard( m_aMutex );
-
         maUsedViewState.Clip.clear();
         mxTarget.clear();
     }
diff --git a/canvas/source/vcl/cachedbitmap.cxx 
b/canvas/source/vcl/cachedbitmap.cxx
index 60b5f7986c55..a27bf6166f96 100644
--- a/canvas/source/vcl/cachedbitmap.cxx
+++ b/canvas/source/vcl/cachedbitmap.cxx
@@ -48,13 +48,11 @@ namespace vclcanvas
     {
     }
 
-    void SAL_CALL CachedBitmap::disposing()
+    void CachedBitmap::disposing(std::unique_lock<std::mutex>& rGuard)
     {
-        ::osl::MutexGuard aGuard( m_aMutex );
-
         mpGraphicObject.reset();
 
-        CachedPrimitiveBase::disposing();
+        CachedPrimitiveBase::disposing(rGuard);
     }
 
     ::sal_Int8 CachedBitmap::doRedraw( const rendering::ViewState&             
     rNewState,
diff --git a/canvas/source/vcl/cachedbitmap.hxx 
b/canvas/source/vcl/cachedbitmap.hxx
index 0ef04654d4c3..140b9c968f38 100644
--- a/canvas/source/vcl/cachedbitmap.hxx
+++ b/canvas/source/vcl/cachedbitmap.hxx
@@ -46,7 +46,7 @@ namespace vclcanvas
                       const css::uno::Reference< css::rendering::XCanvas >&   
rTarget );
 
         /// Dispose all internal references
-        virtual void SAL_CALL disposing() override;
+        virtual void disposing(std::unique_lock<std::mutex>& rGuard) override;
 
     private:
         virtual ::sal_Int8 doRedraw( const css::rendering::ViewState&  
rNewState,

Reply via email to