Skip to content
Snippets Groups Projects
Commit 5a6f1407 authored by Naveen Albert's avatar Naveen Albert Committed by George Joseph
Browse files

app_read: Fix null pointer crash

If the terminator character is not explicitly specified
and an indications tone is used for reading a digit,
there is no null pointer check so Asterisk crashes.
This prevents null usage from occuring.

ASTERISK-29673 #close

Change-Id: Ie941833e123c3dbfb88371b5de5edbbe065514ac
parent 0ab4e749
No related branches found
No related tags found
1 merge request!48asterisk uplift to 18.11.2
......@@ -154,7 +154,7 @@ static int read_exec(struct ast_channel *chan, const char *data)
struct ast_tone_zone_sound *ts = NULL;
struct ast_flags flags = {0};
const char *status = "ERROR";
char *terminator = NULL; /* use default terminator # by default */
char *terminator = "#"; /* use default terminator # by default */
AST_DECLARE_APP_ARGS(arglist,
AST_APP_ARG(variable);
......@@ -213,7 +213,7 @@ static int read_exec(struct ast_channel *chan, const char *data)
}
}
if (ast_test_flag(&flags, OPT_TERMINATOR)) {
if (!ast_strlen_zero(arglist.filename)) {
if (!ast_strlen_zero(opt_args[OPT_ARG_TERMINATOR])) {
terminator = opt_args[OPT_ARG_TERMINATOR];
} else {
terminator = ""; /* no digit inherently will terminate input */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment