mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-19 03:08:45 +00:00
Merge "pbx_builtin: Properly handle hangup during Background"
This commit is contained in:
@@ -1111,6 +1111,13 @@ static int pbx_builtin_background(struct ast_channel *chan, const char *data)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* If ast_waitstream didn't give us back a digit, there is nothing else to do */
|
||||||
|
if (res <= 0) {
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
|
exten[0] = res;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If the single digit DTMF is an extension in the specified context, then
|
* If the single digit DTMF is an extension in the specified context, then
|
||||||
* go there and signal no DTMF. Otherwise, we should exit with that DTMF.
|
* go there and signal no DTMF. Otherwise, we should exit with that DTMF.
|
||||||
@@ -1130,7 +1137,6 @@ static int pbx_builtin_background(struct ast_channel *chan, const char *data)
|
|||||||
* be returned (see #16434).
|
* be returned (see #16434).
|
||||||
*/
|
*/
|
||||||
if (!ast_test_flag(ast_channel_flags(chan), AST_FLAG_DISABLE_WORKAROUNDS)
|
if (!ast_test_flag(ast_channel_flags(chan), AST_FLAG_DISABLE_WORKAROUNDS)
|
||||||
&& (exten[0] = res)
|
|
||||||
&& ast_canmatch_extension(chan, args.context, exten, 1,
|
&& ast_canmatch_extension(chan, args.context, exten, 1,
|
||||||
S_COR(ast_channel_caller(chan)->id.number.valid, ast_channel_caller(chan)->id.number.str, NULL))
|
S_COR(ast_channel_caller(chan)->id.number.valid, ast_channel_caller(chan)->id.number.str, NULL))
|
||||||
&& !ast_matchmore_extension(chan, args.context, exten, 1,
|
&& !ast_matchmore_extension(chan, args.context, exten, 1,
|
||||||
|
Reference in New Issue
Block a user