aboutsummaryrefslogtreecommitdiffstats
path: root/funcs
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-09-19 19:34:25 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-09-19 19:34:25 +0000
commit29f3074aa5559f6766d547ef0266ab9081804276 (patch)
tree2a9f0608fb57b6e804879024a96dd105bc4b4909 /funcs
parented2a3f719c79a1707656331dbdc39eace21fa515 (diff)
Using curl can take a substantial amount of time, so the channel should be
autoserviced while waiting for it to complete. (closes issue #10725, reported by mnicholson) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@83177 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'funcs')
-rw-r--r--funcs/func_curl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/funcs/func_curl.c b/funcs/func_curl.c
index 08e786eaf..940dfd8e2 100644
--- a/funcs/func_curl.c
+++ b/funcs/func_curl.c
@@ -145,6 +145,8 @@ static int acf_curl_exec(struct ast_channel *chan, char *cmd, char *info, char *
AST_STANDARD_APP_ARGS(args, info);
+ ast_autoservice_start(chan);
+
if (!curl_internal(&chunk, args.url, args.postdata)) {
if (chunk.memory) {
chunk.memory[chunk.size] = '\0';
@@ -158,6 +160,8 @@ static int acf_curl_exec(struct ast_channel *chan, char *cmd, char *info, char *
ast_log(LOG_ERROR, "Cannot allocate curl structure\n");
}
+ ast_autoservice_stop(chan);
+
ast_module_user_remove(u);
return 0;