tCleanup fonts on program termination - xmenu - drop-down menu for X11
(HTM) git clone git://git.z3bra.org/xmenu.git
(DIR) Log
(DIR) Files
(DIR) Refs
---
(DIR) commit 9ecad90506da66bd70fa52789aa60e8af79f5a02
(DIR) parent ef10488524d19fc455dafb8fc84fbbe898ae0c85
(HTM) Author: Willy Goiffon <dev@z3bra.org>
Date: Wed, 20 Nov 2019 08:45:24 +0100
Cleanup fonts on program termination
Diffstat:
M font.c | 5 ++++-
M xmenu.c | 1 +
2 files changed, 5 insertions(+), 1 deletion(-)
---
(DIR) diff --git a/font.c b/font.c
t@@ -2,6 +2,7 @@
/* internal variable holding last loaded font */
static FT_Face face;
+static FT_Library ft;
int
xft_loadfont(char *query, double dpi)
t@@ -9,7 +10,6 @@ xft_loadfont(char *query, double dpi)
FcResult result;
FcPattern *pattern, *match;
FcValue index, file, pxsz;
- FT_Library ft;
if (FcInit() != FcTrue)
return -1;
t@@ -51,6 +51,8 @@ xft_loadfont(char *query, double dpi)
FT_Set_Char_Size(face, 0, 64 * pxsz.u.d/(dpi/72.0), dpi, dpi);
+ FcPatternDestroy(match);
+
return 0;
}
t@@ -220,4 +222,5 @@ void
xft_unload(void)
{
FcFini();
+ FT_Done_FreeType(ft);
}
(DIR) diff --git a/xmenu.c b/xmenu.c
t@@ -192,6 +192,7 @@ main(int argc, char *argv[])
if (current >= 0)
printf("%s\n", entries[current]);
+ xft_unload();
xcb_disconnect(dpy);
return 0;
}