mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-19 08:11:21 +00:00
Checking global variables here actually overwrote the previous substitution by
channel variables, and in any case, was redundant; pbx_substitute_variables_helper ALREADY does substitution for global variables. (closes issue #13327) Reported by: pj git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@162922 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -7464,18 +7464,9 @@ int ast_add_extension2(struct ast_context *con,
|
|||||||
if (priority == PRIORITY_HINT && strstr(application, "${") && !strstr(extension, "_")) {
|
if (priority == PRIORITY_HINT && strstr(application, "${") && !strstr(extension, "_")) {
|
||||||
struct ast_channel c = {0, };
|
struct ast_channel c = {0, };
|
||||||
|
|
||||||
/* Start out with regular variables */
|
|
||||||
ast_copy_string(c.exten, extension, sizeof(c.exten));
|
ast_copy_string(c.exten, extension, sizeof(c.exten));
|
||||||
ast_copy_string(c.context, con->name, sizeof(c.context));
|
ast_copy_string(c.context, con->name, sizeof(c.context));
|
||||||
pbx_substitute_variables_helper(&c, application, expand_buf, sizeof(expand_buf));
|
pbx_substitute_variables_helper(&c, application, expand_buf, sizeof(expand_buf));
|
||||||
|
|
||||||
/* Move on to global variables if they exist */
|
|
||||||
ast_rwlock_rdlock(&globalslock);
|
|
||||||
if (AST_LIST_FIRST(&globals)) {
|
|
||||||
pbx_substitute_variables_varshead(&globals, application, expand_buf, sizeof(expand_buf));
|
|
||||||
application = expand_buf;
|
|
||||||
}
|
|
||||||
ast_rwlock_unlock(&globalslock);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
length = sizeof(struct ast_exten);
|
length = sizeof(struct ast_exten);
|
||||||
|
|||||||
Reference in New Issue
Block a user