[Libreoffice-commits] core.git: vcl/inc vcl/qt5

Kacper Kasper kacperkasper at gmail.com
Sun Jun 10 06:44:06 UTC 2018


 vcl/inc/qt5/Qt5FontFace.hxx  |    3 ++-
 vcl/inc/qt5/Qt5Graphics.hxx  |    2 +-
 vcl/qt5/Qt5Font.hxx          |    3 ++-
 vcl/qt5/Qt5FontFace.cxx      |    3 ++-
 vcl/qt5/Qt5Graphics.cxx      |    2 +-
 vcl/qt5/Qt5Graphics_Text.cxx |    8 +++-----
 6 files changed, 11 insertions(+), 10 deletions(-)

New commits:
commit 812cae2f0b96c3d95d267b83727dd5a2114e611a
Author: Kacper Kasper <kacperkasper at gmail.com>
Date:   Sun Jun 10 05:59:31 2018 +0200

    qt5: hold LogicalFontInstance with rtl::Reference
    
    Build fix after c4c56de1b0e62ec866b519b2b24c5e805f0a86d3.
    
    Change-Id: I49303528ccbe49894a0fbae3c24d3f3d08c016eb
    Reviewed-on: https://gerrit.libreoffice.org/55547
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/vcl/inc/qt5/Qt5FontFace.hxx b/vcl/inc/qt5/Qt5FontFace.hxx
index 4cc21010a8b7..0e1a359acbb5 100644
--- a/vcl/inc/qt5/Qt5FontFace.hxx
+++ b/vcl/inc/qt5/Qt5FontFace.hxx
@@ -47,7 +47,8 @@ public:
     bool GetFontCapabilities(vcl::FontCapabilities& rFontCapabilities) const;
     bool HasChar(sal_uInt32 cChar) const;
 
-    LogicalFontInstance* CreateFontInstance(const FontSelectPattern& rFSD) const override;
+    rtl::Reference<LogicalFontInstance>
+    CreateFontInstance(const FontSelectPattern& rFSD) const override;
 
 protected:
     Qt5FontFace(const Qt5FontFace&);
diff --git a/vcl/inc/qt5/Qt5Graphics.hxx b/vcl/inc/qt5/Qt5Graphics.hxx
index af21ee462b18..40284db9f33a 100644
--- a/vcl/inc/qt5/Qt5Graphics.hxx
+++ b/vcl/inc/qt5/Qt5Graphics.hxx
@@ -48,7 +48,7 @@ class Qt5Graphics : public SalGraphics
     QPainter::CompositionMode m_eCompositionMode;
 
     PhysicalFontCollection* m_pFontCollection;
-    Qt5Font* m_pTextStyle[MAX_FALLBACK];
+    rtl::Reference<Qt5Font> m_pTextStyle[MAX_FALLBACK];
     Color m_aTextColor;
 
     Qt5Graphics(Qt5Frame* pFrame, QImage* pQImage);
diff --git a/vcl/qt5/Qt5Font.hxx b/vcl/qt5/Qt5Font.hxx
index 4e37f7d28bdd..81bd723c1ab6 100644
--- a/vcl/qt5/Qt5Font.hxx
+++ b/vcl/qt5/Qt5Font.hxx
@@ -27,7 +27,8 @@
 
 class Qt5Font final : public QFont, public LogicalFontInstance
 {
-    friend LogicalFontInstance* Qt5FontFace::CreateFontInstance(const FontSelectPattern&) const;
+    friend rtl::Reference<LogicalFontInstance>
+    Qt5FontFace::CreateFontInstance(const FontSelectPattern&) const;
 
     virtual hb_font_t* ImplInitHbFont() override;
 
diff --git a/vcl/qt5/Qt5FontFace.cxx b/vcl/qt5/Qt5FontFace.cxx
index bd3994a721ee..d0efb488d57c 100644
--- a/vcl/qt5/Qt5FontFace.cxx
+++ b/vcl/qt5/Qt5FontFace.cxx
@@ -62,7 +62,8 @@ Qt5FontFace::~Qt5FontFace() {}
 
 sal_IntPtr Qt5FontFace::GetFontId() const { return reinterpret_cast<sal_IntPtr>(&m_aFontId); }
 
-LogicalFontInstance* Qt5FontFace::CreateFontInstance(const FontSelectPattern& rFSD) const
+rtl::Reference<LogicalFontInstance>
+Qt5FontFace::CreateFontInstance(const FontSelectPattern& rFSD) const
 {
     return new Qt5Font(*this, rFSD);
 }
diff --git a/vcl/qt5/Qt5Graphics.cxx b/vcl/qt5/Qt5Graphics.cxx
index c7ca69a8a606..7257b8059926 100644
--- a/vcl/qt5/Qt5Graphics.cxx
+++ b/vcl/qt5/Qt5Graphics.cxx
@@ -47,7 +47,7 @@ Qt5Graphics::~Qt5Graphics()
     {
         if (!m_pTextStyle[i])
             break;
-        m_pTextStyle[i]->Release();
+        m_pTextStyle[i].clear();
     }
 }
 
diff --git a/vcl/qt5/Qt5Graphics_Text.cxx b/vcl/qt5/Qt5Graphics_Text.cxx
index cf244d3f4d78..cb7bef853ba8 100644
--- a/vcl/qt5/Qt5Graphics_Text.cxx
+++ b/vcl/qt5/Qt5Graphics_Text.cxx
@@ -41,8 +41,7 @@ void Qt5Graphics::SetFont(const FontSelectPattern* pReqFont, int nFallbackLevel)
     {
         if (!m_pTextStyle[i])
             break;
-        m_pTextStyle[i]->Release();
-        m_pTextStyle[i] = nullptr;
+        m_pTextStyle[i].clear();
     }
 
     if (!pReqFont)
@@ -51,8 +50,7 @@ void Qt5Graphics::SetFont(const FontSelectPattern* pReqFont, int nFallbackLevel)
     if (!pReqFont->mpFontInstance)
         return;
 
-    m_pTextStyle[nFallbackLevel] = static_cast<Qt5Font*>(pReqFont->mpFontInstance);
-    m_pTextStyle[nFallbackLevel]->Acquire();
+    m_pTextStyle[nFallbackLevel] = static_cast<Qt5Font*>(pReqFont->mpFontInstance.get());
 }
 
 void Qt5Graphics::GetFontMetric(ImplFontMetricDataRef& rFMD, int nFallbackLevel)
@@ -137,7 +135,7 @@ bool Qt5Graphics::GetGlyphBoundRect(const GlyphItem& rGlyph, tools::Rectangle& r
     if (nLevel >= MAX_FALLBACK)
         return false;
 
-    Qt5Font* pFont = m_pTextStyle[nLevel];
+    Qt5Font* pFont = m_pTextStyle[nLevel].get();
     if (!pFont)
         return false;
 


More information about the Libreoffice-commits mailing list