From 15ed15bf9f434c8dbacaa6a0919172292e25a315 Mon Sep 17 00:00:00 2001 From: Joshua Colp Date: Sat, 14 Mar 2015 01:59:31 +0000 Subject: [PATCH] func_curl: Don't hold exclusive lock when performing HTTP request. This code originally kept a lock held when performing the HTTP request to ensure that the options provided to curl remain valid. This doesn't seem to be necessary these days and holding the lock caused requests to happen sequentially instead of in parallel. ASTERISK-18708 #close Reported by: Dave Cabot git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@432948 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- funcs/func_curl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/funcs/func_curl.c b/funcs/func_curl.c index 767cb791a9..5d7c3a550e 100644 --- a/funcs/func_curl.c +++ b/funcs/func_curl.c @@ -654,6 +654,7 @@ static int acf_curl_helper(struct ast_channel *chan, const char *cmd, char *info curl_easy_setopt(*curl, cur->key, cur->value); } } + AST_LIST_UNLOCK(&global_curl_info); if (chan && (store = ast_channel_datastore_find(chan, &curl_info, NULL))) { list = store->data; @@ -692,7 +693,6 @@ static int acf_curl_helper(struct ast_channel *chan, const char *cmd, char *info if (store) { AST_LIST_UNLOCK(list); } - AST_LIST_UNLOCK(&global_curl_info); if (args.postdata) { curl_easy_setopt(*curl, CURLOPT_POST, 0);