nsxiv7e7eaf0
fix: memory leak due to not destroying XrmDatabase (#134)
+3 −2
1 file changed
- M window.c +3 −2
| @@ -92,7 +92,7 @@ const char* win_res(XrmDatabase db, const char *name, const char *def) | |||
| 92 | 92 | char *type; | |
| 93 | 93 | XrmValue ret; | |
| 94 | 94 | ||
| 95 | − | if (db != None && | |
| 95 | + | if (db != NULL && | |
| 96 | 96 | XrmGetResource(db, name, name, &type, &ret) && | |
| 97 | 97 | STREQ(type, "String")) | |
| 98 | 98 | { | |
| @@ -130,7 +130,7 @@ void win_init(win_t *win) | |||
| 130 | 130 | ||
| 131 | 131 | XrmInitialize(); | |
| 132 | 132 | res_man = XResourceManagerString(e->dpy); | |
| 133 | − | db = res_man != NULL ? XrmGetStringDatabase(res_man) : None; | |
| 133 | + | db = res_man == NULL ? NULL : XrmGetStringDatabase(res_man); | |
| 134 | 134 | ||
| 135 | 135 | win_bg = win_res(db, RES_CLASS ".window.background", "white"); | |
| 136 | 136 | win_fg = win_res(db, RES_CLASS ".window.foreground", "black"); | |
| @@ -158,6 +158,7 @@ void win_init(win_t *win) | |||
| 158 | 158 | win->bar.h = options->hide_bar ? 0 : barheight; | |
| 159 | 159 | #endif /* HAVE_LIBFONTS */ | |
| 160 | 160 | ||
| 161 | + | XrmDestroyDatabase(db); | |
| 161 | 162 | INIT_ATOM_(WM_DELETE_WINDOW); | |
| 162 | 163 | INIT_ATOM_(_NET_WM_NAME); | |
| 163 | 164 | INIT_ATOM_(_NET_WM_ICON_NAME); | |