diff --git a/main/http.c b/main/http.c
index ce42c4423884b5ef4dc828d6af6935190697c4cf..674ae36eae8515fbce09227b5900e1cc743ec609 100644
--- a/main/http.c
+++ b/main/http.c
@@ -810,12 +810,13 @@ struct ast_variable *ast_http_get_cookies(struct ast_variable *headers)
 	struct ast_variable *v, *cookies=NULL;
 
 	for (v = headers; v; v = v->next) {
-                if (!strncasecmp(v->name, "Cookie", 6)) {
+		if (!strncasecmp(v->name, "Cookie", 6)) {
+			char *tmp = ast_strdupa(v->value);
 			if (cookies) {
 				ast_variables_destroy(cookies);
 			}
 
-			cookies = parse_cookies((char *)v->value);
+			cookies = parse_cookies(tmp);
 		}
 	}
 	return cookies;