From: Diederik de Groot Date: Mon, 18 Jan 2016 09:49:48 +0000 (+0100) Subject: main/asterisk.c: ast_el_read_char X-Git-Tag: 13.8.0-rc1~115 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c68c66c61fc1757aeb7e77832249bc855cec9691;p=thirdparty%2Fasterisk.git main/asterisk.c: ast_el_read_char Make sure buf[res] is not accessed at res=-1 (buffer underrun). Address Sanitizer will complain about this quite loudly. ASTERISK-24801 #close Change-Id: Ifcd7f691310815a31756b76067c56fba299d3ae9 --- diff --git a/main/asterisk.c b/main/asterisk.c index c576c16f6b..d99aaed189 100644 --- a/main/asterisk.c +++ b/main/asterisk.c @@ -2808,11 +2808,12 @@ static int ast_el_read_char(EditLine *editline, char *cp) console_print(buf, 0); - if ((res < EL_BUF_SIZE - 1) && ((buf[res-1] == '\n') || (buf[res-2] == '\n'))) { + if ((res < EL_BUF_SIZE - 1) && ((buf[res-1] == '\n') || (res >= 2 && buf[res-2] == '\n'))) { *cp = CC_REFRESH; return(1); - } else + } else { lastpos = 1; + } } }