Author: Lars Hjemli <hjemli@gmail.com>
cgit.c: fix caching keyed on PATH_INFO with no QUERY_STRING When generating a hash for caching, ctx.qry.raw is used as key. And since cgit_parse_url() zero-terminates it's argument (after the repo path), ctx.qry.raw must xstrdup(ctx.qry.url). Signed-off-by: Lars Hjemli <hjemli@gmail.com>
cgit.c | 2 +-
diff --git a/cgit.c b/cgit.c index 5816f3d8afef84ba7ed14580a0682342f206b50e..b0e1c44366cda6e9af2951561e092cba91959b14 100644 --- a/cgit.c +++ b/cgit.c @@ -539,7 +539,7 @@ qry = ctx.qry.raw; ctx.qry.raw = xstrdup(fmt("%s?%s", path, qry)); free(qry); } else - ctx.qry.raw = ctx.qry.url; + ctx.qry.raw = xstrdup(ctx.qry.url); cgit_parse_url(ctx.qry.url); }