]> git.armaanb.net Git - dmenu.git/blobdiff - dmenu.c
bugfix of the -0 case in dmenu (thanks to Sander for his hint)
[dmenu.git] / dmenu.c
diff --git a/dmenu.c b/dmenu.c
index 4584c0737cf76a9939ca7d99b49c0717a7afc776..78c5a752a2aed6133a38d3a300a20e2e527f25e9 100644 (file)
--- a/dmenu.c
+++ b/dmenu.c
@@ -534,7 +534,7 @@ match(char *pattern) {
        }
        if(lprefix) {
                if(itemend) {
-                       itemend->right - lprefix;
+                       itemend->right = lprefix;
                        lprefix->left = itemend;
                }
                else
@@ -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;
@@ -707,12 +707,11 @@ main(int argc, char *argv[]) {
                        if(++i < argc) x = atoi(argv[i]);
                }
                else if(!strcmp(argv[i], "-y")) {
-                       if(++i < argc) {
+                       if(++i < argc)
                                if(!strcmp(argv[i], "-0"))
-                                       y = (int)(unsigned int)-1;
+                                       y = ((~(unsigned int)0)/2)+1;
                                else
                                        y = atoi(argv[i]);
-                       }
                }
                else if(!strcmp(argv[i], "-w")) {
                        if(++i < argc) w = atoi(argv[i]);