summaryrefslogtreecommitdiff
path: root/main/asterisk.c
diff options
context:
space:
mode:
authorDiederik de Groot <ddegroot@talon.nl>2016-01-18 10:49:48 +0100
committerMark Michelson <mmichelson@digium.com>2016-01-21 15:25:07 -0600
commitc68c66c61fc1757aeb7e77832249bc855cec9691 (patch)
treea94053c3b61f0e9813f80d8d18fd74ba73f59fe6 /main/asterisk.c
parentf87c3275cc4d60871167283e621565d51b35ff8d (diff)
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
Diffstat (limited to 'main/asterisk.c')
-rw-r--r--main/asterisk.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/main/asterisk.c b/main/asterisk.c
index c576c16f6..d99aaed18 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;
+ }
}
}