From 800bcd41f5b38853c98bfdf48c5a71dcb33fe54f Mon Sep 17 00:00:00 2001 From: Leah Neukirchen Date: Fri, 8 May 2020 19:58:36 +0200 Subject: on_url: can be called multiple times for long URLs --- hittpd.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hittpd.c b/hittpd.c index d8ae501..c4a9f91 100644 --- a/hittpd.c +++ b/hittpd.c @@ -102,8 +102,13 @@ on_url(http_parser *p, const char *s, size_t l) { struct conn_data *data = p->data; - if (!(data->path = strndup(s, l))) + size_t len = data->path ? strlen(data->path) : 0; + char *new = realloc(data->path, len + l + 1); + if (!new) return 1; + data->path = new; + memcpy(data->path + len, s, l); + data->path[len + l] = 0; return 0; } -- cgit 1.4.1