fix: correctly close the font (#250)

currently we immediately close the font on win_init_font(), which was
introduced in 0d8dcfd. this was probably not correct since we use `font`
later in win_draw_text().

instead, the font should be closed at exit/cleanup.
This commit is contained in:
N-R-K 2022-04-10 12:36:09 +00:00 committed by GitHub
parent 14e9c34ecc
commit ec5a51d798
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -73,7 +73,6 @@ static void win_init_font(const win_env_t *e, const char *fontstr)
fontheight = font->ascent + font->descent; fontheight = font->ascent + font->descent;
FcPatternGetDouble(font->pattern, FC_SIZE, 0, &fontsize); FcPatternGetDouble(font->pattern, FC_SIZE, 0, &fontsize);
barheight = fontheight + 2 * V_TEXT_PAD; barheight = fontheight + 2 * V_TEXT_PAD;
XftFontClose(e->dpy, font);
} }
static void xft_alloc_color(const win_env_t *e, const char *name, XftColor *col) static void xft_alloc_color(const win_env_t *e, const char *name, XftColor *col)
@ -336,7 +335,9 @@ CLEANUP void win_close(win_t *win)
XFreeCursor(win->env.dpy, cursors[i].icon); XFreeCursor(win->env.dpy, cursors[i].icon);
XFreeGC(win->env.dpy, gc); XFreeGC(win->env.dpy, gc);
#if HAVE_LIBFONTS
XftFontClose(win->env.dpy, font);
#endif
XDestroyWindow(win->env.dpy, win->xwin); XDestroyWindow(win->env.dpy, win->xwin);
XCloseDisplay(win->env.dpy); XCloseDisplay(win->env.dpy);
} }