Author: Lars Hjemli <hjemli@gmail.com>
Don't be fooled by trailing '/' in url-parameter cgit_parse_url() didn't check if the path-part of urls contained a real path or just a trailing slash. This made the log-page die since the path filtering supplied an invalid path argument. This fixes it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
parsing.c | 3 ++-
diff --git a/parsing.c b/parsing.c index a028625e23cafd7be713ede646eda35cfe6387a1..4420e5867cacf716df3aec1649241acd3354dced 100644 --- a/parsing.c +++ b/parsing.c @@ -167,7 +167,8 @@ cgit_query_repo = cgit_repo->url; p = strchr(cmd + 1, '/'); if (p) { p[0] = '\0'; - cgit_query_path = xstrdup(p + 1); + if (p[1]) + cgit_query_path = xstrdup(p + 1); } cgit_cmd = cgit_get_cmd_index(cmd + 1); cgit_query_page = xstrdup(cmd + 1);