summaryrefslogtreecommitdiffstats
path: root/src/serve.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/serve.c')
-rw-r--r--src/serve.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/serve.c b/src/serve.c
index 74bb979..4ae92d9 100644
--- a/src/serve.c
+++ b/src/serve.c
@@ -375,6 +375,7 @@ serve_request(struct gmnisrv_client *client)
if (!route) {
client_submit_response(client,
GEMINI_STATUS_NOT_FOUND, "Not found", NULL);
+ free(url_path);
return;
}
@@ -390,6 +391,7 @@ serve_request(struct gmnisrv_client *client)
if ((size_t)n >= sizeof(real_path)) {
client_submit_response(client, GEMINI_STATUS_PERMANENT_FAILURE,
"Request path exceeds PATH_MAX", NULL);
+ free(url_path);
return;
}
strcpy(client_path, client->path);
@@ -426,6 +428,7 @@ serve_request(struct gmnisrv_client *client)
client_submit_response(client,
GEMINI_STATUS_NOT_FOUND, "Not found", NULL);
+ free(url_path);
return;
}