# HG changeset patch # User Anselm R. Garbe # Date 1152719431 -7200 # Node ID 2e0fb4130bfbed58a368c23bfa8461938d37a2a2 # Parent 8ad86d0a6a534793d6059837a46021efd63fabf7 new stuff, fixed several issues diff -r 8ad86d0a6a53 -r 2e0fb4130bfb client.c --- a/client.c Wed Jul 12 17:17:15 2006 +0200 +++ b/client.c Wed Jul 12 17:50:31 2006 +0200 @@ -44,8 +44,8 @@ else cols = rows; - gw = (sw - 2 * c->border) / cols; - gh = (sh - bh - 2 * c->border) / rows; + gw = (sw - 2) / cols; + gh = (sh - bh - 2) / rows; for(i = j = 0, c = clients; c; c = c->next) { c->x = i * gw; diff -r 8ad86d0a6a53 -r 2e0fb4130bfb config.mk --- a/config.mk Wed Jul 12 17:17:15 2006 +0200 +++ b/config.mk Wed Jul 12 17:50:31 2006 +0200 @@ -14,7 +14,7 @@ LIBS = -L${PREFIX}/lib -L/usr/lib -lc -lm -L${X11LIB} -lX11 # Linux/BSD -CFLAGS = -g -Wall -I. -I${PREFIX}/include -I/usr/include -I${X11INC} \ +CFLAGS = -g -Wall -O2 -I. -I${PREFIX}/include -I/usr/include -I${X11INC} \ -DVERSION=\"${VERSION}\" LDFLAGS = -g ${LIBS} diff -r 8ad86d0a6a53 -r 2e0fb4130bfb draw.c --- a/draw.c Wed Jul 12 17:17:15 2006 +0200 +++ b/draw.c Wed Jul 12 17:50:31 2006 +0200 @@ -39,6 +39,7 @@ XSetForeground(dpy, b->gc, b->bg); XFillRectangles(dpy, b->drawable, b->gc, &r, 1); + w = 0; if(border) drawborder(dpy, b); diff -r 8ad86d0a6a53 -r 2e0fb4130bfb event.c --- a/event.c Wed Jul 12 17:17:15 2006 +0200 +++ b/event.c Wed Jul 12 17:50:31 2006 +0200 @@ -186,11 +186,11 @@ if(ev->state == PropertyDelete) return; /* ignore */ - if(ev->atom == wm_atom[WMProtocols]) { - c->proto = win_proto(c->win); - return; - } if((c = getclient(ev->window))) { + if(ev->atom == wm_atom[WMProtocols]) { + c->proto = win_proto(c->win); + return; + } switch (ev->atom) { default: break; case XA_WM_TRANSIENT_FOR: diff -r 8ad86d0a6a53 -r 2e0fb4130bfb util.c --- a/util.c Wed Jul 12 17:17:15 2006 +0200 +++ b/util.c Wed Jul 12 17:50:31 2006 +0200 @@ -126,13 +126,14 @@ perror(" failed"); } else { - n = 0; + l = n = 0; close(pfd[1]); - while(l > n) { + while(n < len) { if((l = read(pfd[0], buf + n, len - n)) < 1) break; n += l; } + while(l > n); close(pfd[0]); buf[n < len ? n : len - 1] = 0; } diff -r 8ad86d0a6a53 -r 2e0fb4130bfb wm.c --- a/wm.c Wed Jul 12 17:17:15 2006 +0200 +++ b/wm.c Wed Jul 12 17:50:31 2006 +0200 @@ -95,13 +95,12 @@ int win_proto(Window w) { - Atom *protocols; + unsigned char *protocols; long res; int protos = 0; int i; - res = win_property(w, wm_atom[WMProtocols], XA_ATOM, 20L, - ((unsigned char **) &protocols)); + res = win_property(w, wm_atom[WMProtocols], XA_ATOM, 20L, &protocols); if(res <= 0) { return protos; }