fix a possible free of a uninitialize variable in paste() - dmenu - dynamic menu | |
git clone git://git.suckless.org/dmenu | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 1cabeda5505dcc35d4d2ca2a09151a7c449fb401 | |
parent 41379f7c39e6aa0a17d7807b22b49ea148f5b0fa | |
Author: Hiltjo Posthuma <[email protected]> | |
Date: Fri, 3 Nov 2017 15:31:37 +0100 | |
fix a possible free of a uninitialize variable in paste() | |
Diffstat: | |
M dmenu.c | 10 ++++++---- | |
1 file changed, 6 insertions(+), 4 deletions(-) | |
--- | |
diff --git a/dmenu.c b/dmenu.c | |
@@ -467,10 +467,12 @@ paste(void) | |
Atom da; | |
/* we have been given the current selection, now insert it into input … | |
- XGetWindowProperty(dpy, win, utf8, 0, (sizeof text / 4) + 1, False, | |
- utf8, &da, &di, &dl, &dl, (unsigned char **)&p); | |
- insert(p, (q = strchr(p, '\n')) ? q - p : (ssize_t)strlen(p)); | |
- XFree(p); | |
+ if (XGetWindowProperty(dpy, win, utf8, 0, (sizeof text / 4) + 1, False, | |
+ utf8, &da, &di, &dl, &dl, (unsigned char **)&p) | |
+ == Success && p) { | |
+ insert(p, (q = strchr(p, '\n')) ? q - p : (ssize_t)strlen(p)); | |
+ XFree(p); | |
+ } | |
drawmenu(); | |
} | |