diff --git a/res/res_agi.c b/res/res_agi.c index 830a11278d..8b2dc0c393 100644 --- a/res/res_agi.c +++ b/res/res_agi.c @@ -1649,9 +1649,8 @@ static int agi_exec_full(struct ast_channel *chan, void *data, int enhanced, int strncpy(buf, data, sizeof(buf) - 1); memset(&agi, 0, sizeof(agi)); - while ((stringp = strsep(&tmp, "|"))) { + while ((stringp = strsep(&tmp, "|")) && argc < MAX_ARGS - 1) argv[argc++] = stringp; - } argv[argc] = NULL; LOCAL_USER_ADD(u);