From: Hiltjo Posthuma Date: Fri, 3 Nov 2017 14:31:37 +0000 (+0100) Subject: fix a possible free of a uninitialize variable in paste() X-Git-Url: https://git.danieliu.xyz/?a=commitdiff_plain;h=1cabeda5505dcc35d4d2ca2a09151a7c449fb401;p=dmenu.git fix a possible free of a uninitialize variable in paste() --- diff --git a/dmenu.c b/dmenu.c index 91330f1..eae5685 100644 --- 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(); }