commit | 552d12b10e1faa3f8c8340fcf5fe889b859cd5b0 | [log] [tgz] |
---|---|---|
author | Andre Heider <a.heider@gmail.com> | Thu Aug 02 20:59:43 2012 +0200 |
committer | Kristian Høgsberg <krh@bitplanet.net> | Fri Aug 03 12:54:06 2012 -0400 |
tree | 6c591d43335c371599ddb432260ea4c7c1a262c0 | |
parent | 5626d34d630de3c1a6d509b0d37b2a2dc287d695 [diff] [blame] |
terminal: Don't crash on non-ascii chars isalpha() and isdigit() don't like huge values. Noticed with ascii-art in the shell prompt.
diff --git a/clients/terminal.c b/clients/terminal.c index 782f087..aa072cd 100644 --- a/clients/terminal.c +++ b/clients/terminal.c
@@ -2268,6 +2268,9 @@ { const char extra[] = "-,./?%&#:_=+@~"; + if (ch > 127) + return 1; + return ch == 0 || !(isalpha(ch) || isdigit(ch) || strchr(extra, ch)); }