X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=main.c;h=47749fe3215b2470b979b5076268155449211277;hb=21898c6049ea66dae34a660598684a7babec1097;hp=934bea4a1176706d4c1a8fdc0ab80fe3829a2fba;hpb=2210ea7e3b0b2839ac7fb49c18d2731cb9e94e01;p=dwm.git diff --git a/main.c b/main.c index 934bea4..47749fe 100644 --- a/main.c +++ b/main.c @@ -1,9 +1,10 @@ -/* (C)opyright MMVI Anselm R. Garbe +/* (C)opyright MMVI-MMVII Anselm R. Garbe * See LICENSE file for license details. */ #include "dwm.h" #include +#include #include #include #include @@ -39,9 +40,9 @@ static Bool otherwm, readin; static void cleanup(void) { close(STDIN_FILENO); - while(sel) { - resize(sel, True, TopLeft); - unmanage(sel); + while(stack) { + resize(stack, True, TopLeft); + unmanage(stack); } if(dc.font.set) XFreeFontSet(dpy, dc.font.set); @@ -51,6 +52,9 @@ cleanup(void) { XFreePixmap(dpy, dc.drawable); XFreeGC(dpy, dc.gc); XDestroyWindow(dpy, barwin); + XFreeCursor(dpy, cursor[CurNormal]); + XFreeCursor(dpy, cursor[CurResize]); + XFreeCursor(dpy, cursor[CurMove]); XSetInputFocus(dpy, PointerRoot, RevertToPointerRoot, CurrentTime); XSync(dpy, False); free(seltag); @@ -104,7 +108,7 @@ setup(void) { numlockmask = (1 << i); } } - XFree(modmap); + XFreeModifiermap(modmap); /* select for events */ wa.event_mask = SubstructureRedirectMask | SubstructureNotifyMask | EnterWindowMask | LeaveWindowMask; @@ -232,11 +236,12 @@ main(int argc, char *argv[]) { fd_set rd; if(argc == 2 && !strncmp("-v", argv[1], 3)) { - fputs("dwm-"VERSION", (C)opyright MMVI Anselm R. Garbe\n", stdout); + fputs("dwm-"VERSION", (C)opyright MMVI-MMVII Anselm R. Garbe\n", stdout); exit(EXIT_SUCCESS); } else if(argc != 1) eprint("usage: dwm [-v]\n"); + setlocale(LC_CTYPE, ""); dpy = XOpenDisplay(0); if(!dpy) eprint("dwm: cannot open display\n"); @@ -277,10 +282,11 @@ main(int argc, char *argv[]) { switch(r = read(STDIN_FILENO, stext, sizeof stext - 1)) { case -1: strncpy(stext, strerror(errno), sizeof stext - 1); + stext[sizeof stext - 1] = '\0'; readin = False; break; case 0: - strncpy(stext, "EOF", sizeof stext); + strncpy(stext, "EOF", 4); readin = False; break; default: