t* dwm + patches
       
   URI git clone git://git.codevoid.de/dwm-sdk
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit b1701adf75297747c52e0c3ed2c314cd10129907
   DIR parent 2e836ecce1ba0629a6088b739c1092d27fccd72b
   URI Author: Anselm R. Garbe <garbeam@wmii.de>
       Date:   Wed, 12 Jul 2006 17:50:31 +0200
       
       new stuff, fixed several issues
       
       Diffstat:
         M client.c                            |       4 ++--
         M config.mk                           |       2 +-
         M draw.c                              |       1 +
         M event.c                             |       8 ++++----
         M util.c                              |       5 +++--
         M wm.c                                |       5 ++---
       
       6 files changed, 13 insertions(+), 12 deletions(-)
       ---
   DIR diff --git a/client.c b/client.c
       t@@ -44,8 +44,8 @@ arrange(void *aux)
                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;
   DIR diff --git a/config.mk b/config.mk
       t@@ -14,7 +14,7 @@ VERSION = 0.0
        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}
        
   DIR diff --git a/draw.c b/draw.c
       t@@ -39,6 +39,7 @@ draw(Display *dpy, Brush *b, Bool border, const char *text)
                XSetForeground(dpy, b->gc, b->bg);
                XFillRectangles(dpy, b->drawable, b->gc, &r, 1);
        
       +        w = 0;
                if(border)
                        drawborder(dpy, b);
        
   DIR diff --git a/event.c b/event.c
       t@@ -186,11 +186,11 @@ propertynotify(XEvent *e)
                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:
   DIR diff --git a/util.c b/util.c
       t@@ -126,13 +126,14 @@ pipe_spawn(char *buf, unsigned int len, Display *dpy, char *argv[])
                        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;
                }
   DIR diff --git a/wm.c b/wm.c
       t@@ -95,13 +95,12 @@ win_property(Window w, Atom a, Atom t, long l, unsigned char **prop)
        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;
                }