mirror of
https://github.com/cuberite/libevent.git
synced 2025-08-03 09:16:30 -04:00
Check error code of evhttp_add_header_internal() in evhttp_parse_query_impl()
(cherry picked from commit 4528d8e98781be794cbce13394f8442dd466684b)
This commit is contained in:
parent
a62ec76561
commit
97e28f09ed
5
http.c
5
http.c
@ -3286,6 +3286,7 @@ evhttp_parse_query_impl(const char *str, struct evkeyvalq *headers,
|
|||||||
p = argument = line;
|
p = argument = line;
|
||||||
while (p != NULL && *p != '\0') {
|
while (p != NULL && *p != '\0') {
|
||||||
char *key, *value, *decoded_value;
|
char *key, *value, *decoded_value;
|
||||||
|
int err;
|
||||||
argument = strsep(&p, "&");
|
argument = strsep(&p, "&");
|
||||||
|
|
||||||
value = argument;
|
value = argument;
|
||||||
@ -3301,8 +3302,10 @@ evhttp_parse_query_impl(const char *str, struct evkeyvalq *headers,
|
|||||||
evhttp_decode_uri_internal(value, strlen(value),
|
evhttp_decode_uri_internal(value, strlen(value),
|
||||||
decoded_value, 1 /*always_decode_plus*/);
|
decoded_value, 1 /*always_decode_plus*/);
|
||||||
event_debug(("Query Param: %s -> %s\n", key, decoded_value));
|
event_debug(("Query Param: %s -> %s\n", key, decoded_value));
|
||||||
evhttp_add_header_internal(headers, key, decoded_value);
|
err = evhttp_add_header_internal(headers, key, decoded_value);
|
||||||
mm_free(decoded_value);
|
mm_free(decoded_value);
|
||||||
|
if (err)
|
||||||
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
result = 0;
|
result = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user