terminal-unix: reject overlong termcap strings

Our own tables have size for only 8 chars, so these sequences must be
rejected. It seems strings of length 8 are still ok, because the code
uses memcmp and not strcmp, so still allow these.

Based on mplayer-svn commit r37129.
This commit is contained in:
wm4 2014-04-10 00:15:11 +02:00
parent 39b2e20698
commit f0e08c01ff
1 changed files with 3 additions and 0 deletions

View File

@ -87,6 +87,9 @@ static char *term_smkx = NULL;
#endif
static keycode_st *keys_push(char *p, int code) {
if (strlen(p) > 8)
return NULL;
if (getch2_keys.len == getch2_keys.cap) {
getch2_keys.cap *= 2;
if (getch2_keys.cap == 0)