aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLukas Fleischer <lfleischer@calcurse.org>2019-02-10 21:40:11 +0100
committerLukas Fleischer <lfleischer@calcurse.org>2019-02-10 21:40:11 +0100
commit6cd67311e30c2dc3c138f339b536679ad1a8d5f4 (patch)
tree465aa84c4f5bbdd90112105e748f0038f1cf3dfe /src
parent0bbe802002c660dd9d555d557ce8daa7c5d681b9 (diff)
downloadcalcurse-6cd67311e30c2dc3c138f339b536679ad1a8d5f4.tar.gz
calcurse-6cd67311e30c2dc3c138f339b536679ad1a8d5f4.zip
Check for KEY_ENTER in getstring()
In some cases (e.g., TERM=pccon0) wgetch(3) can return KEY_ENTER instead of '\n' when the return key is pressed, causing getstring() to fail. Suggested-by: Mikolaj Kucharski <mikolaj@kucharski.name> Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
Diffstat (limited to 'src')
-rw-r--r--src/getstring.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/getstring.c b/src/getstring.c
index 6546565..186598d 100644
--- a/src/getstring.c
+++ b/src/getstring.c
@@ -191,7 +191,8 @@ enum getstr getstring(WINDOW * win, char *str, int l, int x, int y)
getstr_print(win, x, y, &st);
wins_doupdate();
- if ((ch = wgetch(win)) == '\n')
+ ch = wgetch(win);
+ if ((ch == '\n') || (ch == KEY_ENTER))
break;
switch (ch) {
case KEY_BACKSPACE: /* delete one character */