diff options
author | 2016-11-23 16:44:42 +0000 | |
---|---|---|
committer | 2016-11-23 16:44:42 +0000 | |
commit | 662182c806ad969cec7ead2f86a0b2dc039ac05c (patch) | |
tree | 01bbdfa35c3a3c55b00a7eca679f63d3ce691b32 /usr.bin/tmux/key-string.c | |
parent | Copyright and license (diff) | |
download | wireguard-openbsd-662182c806ad969cec7ead2f86a0b2dc039ac05c.tar.xz wireguard-openbsd-662182c806ad969cec7ead2f86a0b2dc039ac05c.zip |
Error on invalid modifier keys.
Diffstat (limited to 'usr.bin/tmux/key-string.c')
-rw-r--r-- | usr.bin/tmux/key-string.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/usr.bin/tmux/key-string.c b/usr.bin/tmux/key-string.c index bb73590ab83..ba36a49bfad 100644 --- a/usr.bin/tmux/key-string.c +++ b/usr.bin/tmux/key-string.c @@ -1,4 +1,4 @@ -/* $OpenBSD: key-string.c,v 1.40 2016/10/11 09:30:36 nicm Exp $ */ +/* $OpenBSD: key-string.c,v 1.41 2016/11/23 16:44:42 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com> @@ -140,6 +140,9 @@ key_string_get_modifiers(const char **string) case 's': modifiers |= KEYC_SHIFT; break; + default: + *string = NULL; + return 0; } *string += 2; } @@ -179,7 +182,7 @@ key_string_lookup_string(const char *string) string++; } modifiers |= key_string_get_modifiers(&string); - if (string[0] == '\0') + if (string == NULL || string[0] == '\0') return (KEYC_UNKNOWN); /* Is this a standard ASCII key? */ |