mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-03 11:25:35 +00:00
automerge commit
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2-netsec@39962 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -127,7 +127,7 @@ static int macro_exec(struct ast_channel *chan, void *data)
|
|||||||
depth = 0;
|
depth = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (depth >= 7) {
|
if (depth >= 20) {
|
||||||
ast_log(LOG_ERROR, "Macro(): possible infinite loop detected. Returning early.\n");
|
ast_log(LOG_ERROR, "Macro(): possible infinite loop detected. Returning early.\n");
|
||||||
LOCAL_USER_REMOVE(u);
|
LOCAL_USER_REMOVE(u);
|
||||||
return 0;
|
return 0;
|
||||||
@@ -241,9 +241,9 @@ static int macro_exec(struct ast_channel *chan, void *data)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* don't stop executing extensions when we're in "h" */
|
/* don't stop executing extensions when we're in "h" */
|
||||||
if (chan->_softhangup && strcasecmp(oldexten,"h")) {
|
if (chan->_softhangup && strcasecmp(chan->macroexten,"h")) {
|
||||||
ast_log(LOG_DEBUG, "Extension %s, priority %d returned normally even though call was hung up\n",
|
ast_log(LOG_DEBUG, "Extension %s, macroexten %s, priority %d returned normally even though call was hung up\n",
|
||||||
chan->exten, chan->priority);
|
chan->exten, chan->macroexten, chan->priority);
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
chan->priority++;
|
chan->priority++;
|
||||||
|
@@ -1161,18 +1161,17 @@ static int handle_setvariable(struct ast_channel *chan, AGI *agi, int argc, char
|
|||||||
|
|
||||||
static int handle_getvariable(struct ast_channel *chan, AGI *agi, int argc, char **argv)
|
static int handle_getvariable(struct ast_channel *chan, AGI *agi, int argc, char **argv)
|
||||||
{
|
{
|
||||||
char *ret;
|
const char *ret;
|
||||||
char tempstr[1024];
|
char tempstr[1024];
|
||||||
|
|
||||||
if (argc != 3)
|
if (argc != 3)
|
||||||
return RESULT_SHOWUSAGE;
|
return RESULT_SHOWUSAGE;
|
||||||
|
|
||||||
/* check if we want to execute an ast_custom_function */
|
/* check if we want to execute an ast_custom_function */
|
||||||
if (!ast_strlen_zero(argv[2]) && (argv[2][strlen(argv[2]) - 1] == ')')) {
|
if (!ast_strlen_zero(argv[2]) && (argv[2][strlen(argv[2]) - 1] == ')'))
|
||||||
ret = ast_func_read(chan, argv[2], tempstr, sizeof(tempstr));
|
ret = ast_func_read(chan, argv[2], tempstr, sizeof(tempstr));
|
||||||
} else {
|
else
|
||||||
pbx_retrieve_variable(chan, argv[2], &ret, tempstr, sizeof(tempstr), NULL);
|
ret = pbx_builtin_getvar_helper(chan, argv[2]);
|
||||||
}
|
|
||||||
|
|
||||||
if (ret)
|
if (ret)
|
||||||
fdprintf(agi->fd, "200 result=1 (%s)\n", ret);
|
fdprintf(agi->fd, "200 result=1 (%s)\n", ret);
|
||||||
|
Reference in New Issue
Block a user