bugfix of the -0 case in dmenu (thanks to Sander for his hint)
authorAnselm R Garbe <garbeam@gmail.com>
Tue, 25 Mar 2008 09:43:34 +0000 (09:43 +0000)
committerAnselm R Garbe <garbeam@gmail.com>
Tue, 25 Mar 2008 09:43:34 +0000 (09:43 +0000)
dmenu.c

diff --git a/dmenu.c b/dmenu.c
index b5638b6..78c5a75 100644 (file)
--- a/dmenu.c
+++ b/dmenu.c
@@ -629,7 +629,7 @@ setup(int x, int y, int w) {
        mw = w ? w : DisplayWidth(dpy, screen);
        mh = dc.font.height + 2;
        if(y < 0) {
-               if(y == (int)(unsigned int)-1)
+               if(y == ((~(unsigned int)0)/2)+1)
                        y = DisplayHeight(dpy, screen) - mh;
                else
                        y = (-1 * y) - mh;
@@ -709,7 +709,7 @@ main(int argc, char *argv[]) {
                else if(!strcmp(argv[i], "-y")) {
                        if(++i < argc)
                                if(!strcmp(argv[i], "-0"))
-                                       y = (int)(unsigned int)-1;
+                                       y = ((~(unsigned int)0)/2)+1;
                                else
                                        y = atoi(argv[i]);
                }