[pango/pango1-dwrite: 7/8] PangoWin32: Add private API to clean up IDWriteFontFace
- From: Chun-wei Fan <fanchunwei src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pango/pango1-dwrite: 7/8] PangoWin32: Add private API to clean up IDWriteFontFace
- Date: Tue, 16 Aug 2022 08:13:47 +0000 (UTC)
commit 671c7665b49ab8529af48cd7fd5b2504c38a4532
Author: Chun-wei Fan <fanchunwei src gnome org>
Date: Tue Aug 16 12:54:26 2022 +0800
PangoWin32: Add private API to clean up IDWriteFontFace
...which is needed for PangoCairo for Windows, when DirectWrite is used to
create the cairo_font_face_t, so that that object does get cleaned up when the
cairo_font_face_t is destroyed.
pango/pangowin32-dwrite-fontmap.cpp | 9 +++++++++
pango/pangowin32-private.h | 3 +++
2 files changed, 12 insertions(+)
---
diff --git a/pango/pangowin32-dwrite-fontmap.cpp b/pango/pangowin32-dwrite-fontmap.cpp
index 275e715df..4975f12a2 100644
--- a/pango/pangowin32-dwrite-fontmap.cpp
+++ b/pango/pangowin32-dwrite-fontmap.cpp
@@ -566,3 +566,12 @@ pango_win32_dwrite_font_release (gpointer dwrite_font)
if (font != NULL)
font->Release ();
}
+
+void
+pango_win32_dwrite_font_face_release (gpointer dwrite_font_face)
+{
+ IDWriteFontFace *face = static_cast<IDWriteFontFace *>(dwrite_font_face);
+
+ if (face != NULL)
+ face->Release ();
+}
diff --git a/pango/pangowin32-private.h b/pango/pangowin32-private.h
index 2f9bbf601..1502ecd92 100644
--- a/pango/pangowin32-private.h
+++ b/pango/pangowin32-private.h
@@ -313,6 +313,9 @@ gboolean pango_win32_dwrite_font_is_monospace (gpointer
void pango_win32_dwrite_font_release (gpointer dwrite_font);
+_PANGO_EXTERN
+void pango_win32_dwrite_font_face_release (gpointer dwrite_font_face);
+
gpointer pango_win32_logfontw_get_dwrite_font (LOGFONTW *logfontw);
PangoFontDescription *
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]