diff options
Diffstat (limited to 'canvas/source/cairo/cairo_cachedbitmap.cxx')
-rw-r--r-- | canvas/source/cairo/cairo_cachedbitmap.cxx | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/canvas/source/cairo/cairo_cachedbitmap.cxx b/canvas/source/cairo/cairo_cachedbitmap.cxx index c907367a49af..e548778b2fe4 100644 --- a/canvas/source/cairo/cairo_cachedbitmap.cxx +++ b/canvas/source/cairo/cairo_cachedbitmap.cxx @@ -21,7 +21,8 @@ #include <com/sun/star/rendering/XCanvas.hpp> #include <com/sun/star/rendering/RepaintResult.hpp> -#include <tools/diagnose_ex.h> +#include <utility> +#include <comphelper/diagnose_ex.hxx> #include "cairo_cachedbitmap.hxx" #include "cairo_repainttarget.hxx" @@ -32,21 +33,19 @@ using namespace ::com::sun::star; namespace cairocanvas { - CachedBitmap::CachedBitmap( const SurfaceSharedPtr& pSurface, + CachedBitmap::CachedBitmap( SurfaceSharedPtr pSurface, const rendering::ViewState& rUsedViewState, - const rendering::RenderState& rUsedRenderState, + rendering::RenderState aUsedRenderState, const uno::Reference< rendering::XCanvas >& rTarget ) : CachedPrimitiveBase( rUsedViewState, rTarget ), - mpSurface( pSurface ), - maRenderState( rUsedRenderState ) + mpSurface(std::move( pSurface )), + 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, |