diff options
-rw-r--r-- | res/res_config_curl.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/res/res_config_curl.c b/res/res_config_curl.c index 7d8e79aab..81ad23467 100644 --- a/res/res_config_curl.c +++ b/res/res_config_curl.c @@ -463,7 +463,7 @@ static int require_curl(const char *url, const char *unused, va_list ap) { struct ast_str *query, *buffer; char *elm, field[256]; - int type, size; + int type, size, i = 0; if (!ast_custom_function_find("CURL")) { ast_log(LOG_ERROR, "func_curl.so must be loaded in order to use res_config_curl.so!!\n"); @@ -484,7 +484,9 @@ static int require_curl(const char *url, const char *unused, va_list ap) type = va_arg(ap, require_type); size = va_arg(ap, int); ast_uri_encode(elm, field, sizeof(field), ast_uri_http); - ast_str_append(&query, 0, "%s=%s%%3A%d", field, + ast_str_append(&query, 0, "%s%s=%s%%3A%d", + i > 0 ? "&" : "", + field, type == RQ_CHAR ? "char" : type == RQ_INTEGER1 ? "integer1" : type == RQ_UINTEGER1 ? "uinteger1" : @@ -500,6 +502,7 @@ static int require_curl(const char *url, const char *unused, va_list ap) type == RQ_DATETIME ? "datetime" : type == RQ_FLOAT ? "float" : "unknown", size); + i++; } ast_str_append(&query, 0, ")}"); |