Kaydet (Commit) 812cae2f authored tarafından Kacper Kasper's avatar Kacper Kasper Kaydeden (comit) Noel Grandin

qt5: hold LogicalFontInstance with rtl::Reference

Build fix after c4c56de1.

Change-Id: I49303528ccbe49894a0fbae3c24d3f3d08c016eb
Reviewed-on: https://gerrit.libreoffice.org/55547Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst 7e45b80b
......@@ -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&);
......
......@@ -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);
......
......@@ -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;
......
......@@ -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);
}
......
......@@ -47,7 +47,7 @@ Qt5Graphics::~Qt5Graphics()
{
if (!m_pTextStyle[i])
break;
m_pTextStyle[i]->Release();
m_pTextStyle[i].clear();
}
}
......
......@@ -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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment