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