[Libreoffice-commits] core.git: vcl/inc vcl/source
Noel Grandin (via logerrit)
logerrit at kemper.freedesktop.org
Wed Jan 20 06:44:24 UTC 2021
vcl/inc/svdata.hxx | 2 +-
vcl/source/app/svapp.cxx | 2 +-
vcl/source/app/svdata.cxx | 1 +
vcl/source/app/svmain.cxx | 9 ++-------
vcl/source/gdi/cvtgrf.cxx | 4 ++--
5 files changed, 7 insertions(+), 11 deletions(-)
New commits:
commit 08340089c550ce8f2a68ba33bd7c33ac9dee1b1f
Author: Noel Grandin <noelgrandin at gmail.com>
AuthorDate: Tue Jan 19 19:59:04 2021 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Wed Jan 20 07:43:42 2021 +0100
use unique_ptr for GraphicConverter
Change-Id: If2651d03eb878c499dd5e21df479dcdbcaf93987
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109653
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx
index 564c28bdc9b0..defa97bd5168 100644
--- a/vcl/inc/svdata.hxx
+++ b/vcl/inc/svdata.hxx
@@ -223,7 +223,7 @@ struct ImplSVGDIData
std::shared_ptr<ImplFontCache> mxScreenFontCache; // Screen-Font-Cache
lru_scale_cache maScaleCache = lru_scale_cache(10); // Cache for scaled images
ImplDirectFontSubstitution* mpDirectFontSubst = nullptr; // Font-Substitutions defined in Tools->Options->Fonts
- GraphicConverter* mpGrfConverter = nullptr; // Converter for graphics
+ std::unique_ptr<GraphicConverter> mxGrfConverter; // Converter for graphics
tools::Long mnAppFontX = 0; // AppFont X-Numenator for 40/tel Width
tools::Long mnAppFontY = 0; // AppFont Y-Numenator for 80/tel Height
bool mbFontSubChanged = false; // true: FontSubstitution was changed between Begin/End
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx
index 4449f38642ca..69687bd8a6f7 100644
--- a/vcl/source/app/svapp.cxx
+++ b/vcl/source/app/svapp.cxx
@@ -1521,7 +1521,7 @@ css::uno::Reference< css::awt::XDisplayConnection > Application::GetDisplayConne
void Application::SetFilterHdl( const Link<ConvertData&,bool>& rLink )
{
- ImplGetSVData()->maGDIData.mpGrfConverter->SetFilterHdl( rLink );
+ ImplGetSVData()->maGDIData.mxGrfConverter->SetFilterHdl( rLink );
}
const LocaleDataWrapper& Application::GetAppLocaleDataWrapper()
diff --git a/vcl/source/app/svdata.cxx b/vcl/source/app/svdata.cxx
index 29ccf348bc6a..a0a52b91e591 100644
--- a/vcl/source/app/svdata.cxx
+++ b/vcl/source/app/svdata.cxx
@@ -27,6 +27,7 @@
#include <configsettings.hxx>
#include <vcl/QueueInfo.hxx>
+#include <vcl/cvtgrf.hxx>
#include <vcl/dockwin.hxx>
#include <vcl/menu.hxx>
#include <vcl/print.hxx>
diff --git a/vcl/source/app/svmain.cxx b/vcl/source/app/svmain.cxx
index eaba51522b76..194164946cc6 100644
--- a/vcl/source/app/svmain.cxx
+++ b/vcl/source/app/svmain.cxx
@@ -360,7 +360,7 @@ bool InitVCL()
// Initialize global data
pSVData->maGDIData.mxScreenFontList = std::make_shared<PhysicalFontCollection>();
pSVData->maGDIData.mxScreenFontCache = std::make_shared<ImplFontCache>();
- pSVData->maGDIData.mpGrfConverter = new GraphicConverter;
+ pSVData->maGDIData.mxGrfConverter.reset(new GraphicConverter);
g_bIsLeanException = getenv("LO_LEAN_EXCEPTION") != nullptr;
// Set exception handler
@@ -466,12 +466,7 @@ void DeInitVCL()
pExceptionHandler = nullptr;
// free global data
- if (pSVData->maGDIData.mpGrfConverter)
- {
- delete pSVData->maGDIData.mpGrfConverter;
- pSVData->maGDIData.mpGrfConverter = nullptr;
- }
-
+ pSVData->maGDIData.mxGrfConverter.reset();
pSVData->mpSettingsConfigItem.reset();
// prevent unnecessary painting during Scheduler shutdown
diff --git a/vcl/source/gdi/cvtgrf.cxx b/vcl/source/gdi/cvtgrf.cxx
index 9e9ecfb6eac2..d14664bd047a 100644
--- a/vcl/source/gdi/cvtgrf.cxx
+++ b/vcl/source/gdi/cvtgrf.cxx
@@ -33,7 +33,7 @@ GraphicConverter::~GraphicConverter()
ErrCode GraphicConverter::Import( SvStream& rIStm, Graphic& rGraphic, ConvertDataFormat nFormat )
{
- GraphicConverter* pCvt = ImplGetSVData()->maGDIData.mpGrfConverter;
+ GraphicConverter* pCvt = ImplGetSVData()->maGDIData.mxGrfConverter.get();
ErrCode nRet = ERRCODE_IO_GENERAL;
if( pCvt && pCvt->GetFilterHdl().IsSet() )
@@ -54,7 +54,7 @@ ErrCode GraphicConverter::Import( SvStream& rIStm, Graphic& rGraphic, ConvertDat
ErrCode GraphicConverter::Export( SvStream& rOStm, const Graphic& rGraphic, ConvertDataFormat nFormat )
{
- GraphicConverter* pCvt = ImplGetSVData()->maGDIData.mpGrfConverter;
+ GraphicConverter* pCvt = ImplGetSVData()->maGDIData.mxGrfConverter.get();
ErrCode nRet = ERRCODE_IO_GENERAL;
if( pCvt && pCvt->GetFilterHdl().IsSet() )
More information about the Libreoffice-commits
mailing list