Merged revisions 163253 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r163253 | russell | 2008-12-11 15:46:29 -0600 (Thu, 11 Dec 2008) | 8 lines

Fix some observed slowdowns in dialplan processing.

The change is to remove autoservice usage from dialplan functions that do not
need it because they do not perform operations that potentially block.

(closes issue #13940)
Reported by: tbelder

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@163254 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant 2008-12-11 21:48:08 +00:00
parent 06c56e1381
commit 9d3a417eb5
2 changed files with 0 additions and 22 deletions

View File

@ -270,9 +270,6 @@ static int acf_cut_exec(struct ast_channel *chan, const char *cmd, char *data, c
{
int ret = -1;
if (chan)
ast_autoservice_start(chan);
switch (cut_internal(chan, data, buf, len)) {
case ERROR_NOARG:
ast_log(LOG_ERROR, "Syntax: CUT(<varname>,<char-delim>,<range-spec>) - missing argument!\n");
@ -290,9 +287,6 @@ static int acf_cut_exec(struct ast_channel *chan, const char *cmd, char *data, c
ast_log(LOG_ERROR, "Unknown internal error\n");
}
if (chan)
ast_autoservice_stop(chan);
return ret;
}

View File

@ -285,9 +285,6 @@ static int function_fieldqty(struct ast_channel *chan, const char *cmd,
char delim[2] = "";
size_t delim_used;
if (chan)
ast_autoservice_start(chan);
AST_STANDARD_APP_ARGS(args, parse);
if (args.delim) {
ast_get_encoded_char(args.delim, delim, &delim_used);
@ -307,9 +304,6 @@ static int function_fieldqty(struct ast_channel *chan, const char *cmd,
}
snprintf(buf, len, "%d", fieldcount);
if (chan)
ast_autoservice_stop(chan);
return 0;
}
@ -566,9 +560,6 @@ static int array(struct ast_channel *chan, const char *cmd, char *var,
if (!var || !value2)
return -1;
if (chan)
ast_autoservice_start(chan);
if (!strcmp(cmd, "HASH")) {
const char *var2 = pbx_builtin_getvar_helper(chan, "~ODBCFIELDS~");
origvar = var;
@ -615,9 +606,6 @@ static int array(struct ast_channel *chan, const char *cmd, char *var,
}
}
if (chan)
ast_autoservice_stop(chan);
return 0;
}
@ -855,11 +843,7 @@ static int function_eval(struct ast_channel *chan, const char *cmd, char *data,
return -1;
}
if (chan)
ast_autoservice_start(chan);
pbx_substitute_variables_helper(chan, data, buf, buflen - 1);
if (chan)
ast_autoservice_stop(chan);
return 0;
}