diff -r 43c19f9f8e6f -r 06677766e7aa dwm.c --- a/dwm.c Mon Aug 18 10:00:10 2008 +0100 +++ b/dwm.c Mon Aug 18 10:14:51 2008 +0100 @@ -1246,10 +1246,9 @@ void scan(void) { unsigned int i, num; - Window *wins, d1, d2; + Window d1, d2, *wins = NULL; XWindowAttributes wa; - wins = NULL; if(XQueryTree(dpy, root, &d1, &d2, &wins, &num)) { for(i = 0; i < num; i++) { if(!XGetWindowAttributes(dpy, wins[i], &wa) @@ -1265,9 +1264,9 @@ && (wa.map_state == IsViewable || getstate(wins[i]) == IconicState)) manage(wins[i], &wa); } + if(wins) + XFree(wins); } - if(wins) - XFree(wins); } void