avoid redraw when there's no change
while i was timing the performance issue, i noticed that there was lots of random redrawing going on. turns out there were coming from here; if someone presses CTRL/ALT etc without pressing anything else, nothing will be inserted, so nothing will change. but the code will `break`, go down and do a needless redraw. this patch changes it to simply return if the keypress iscntrl() also avoid potential UB by casting *buf into an unsigned char.
This commit is contained in:
parent
b43ec0577f
commit
6818e07291
1 changed files with 3 additions and 2 deletions
3
dmenu.c
3
dmenu.c
|
@ -415,7 +415,8 @@ keypress(XKeyEvent *ev)
|
|||
switch(ksym) {
|
||||
default:
|
||||
insert:
|
||||
if (!iscntrl(*buf))
|
||||
if (iscntrl((unsigned char)*buf))
|
||||
return;
|
||||
insert(buf, len);
|
||||
break;
|
||||
case XK_Delete:
|
||||
|
|
Loading…
Reference in a new issue