aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.mk2
-rw-r--r--main.c22
2 files changed, 14 insertions, 10 deletions
diff --git a/config.mk b/config.mk
index bc89b16..7beebff 100644
--- a/config.mk
+++ b/config.mk
@@ -1,5 +1,5 @@
# dmenu version
-VERSION = 1.7
+VERSION = 1.7.1
# Customize below to fit your system
diff --git a/main.c b/main.c
index 964fad6..3ea9d89 100644
--- a/main.c
+++ b/main.c
@@ -200,11 +200,13 @@ kpress(XKeyEvent * e) {
}
break;
case XK_End:
+ if(!sel)
+ return;
while(next) {
sel = curr = next;
calcoffsets();
}
- while(sel->right)
+ while(sel && sel->right)
sel = sel->right;
break;
case XK_Escape:
@@ -212,6 +214,8 @@ kpress(XKeyEvent * e) {
running = False;
break;
case XK_Home:
+ if(!item)
+ return;
sel = curr = item;
calcoffsets();
break;
@@ -225,16 +229,16 @@ kpress(XKeyEvent * e) {
}
break;
case XK_Next:
- if(next) {
- sel = curr = next;
- calcoffsets();
- }
+ if(!next)
+ return;
+ sel = curr = next;
+ calcoffsets();
break;
case XK_Prior:
- if(prev) {
- sel = curr = prev;
- calcoffsets();
- }
+ if(!prev)
+ return;
+ sel = curr = prev;
+ calcoffsets();
break;
case XK_Return:
if((e->state & ShiftMask) && text)