]> gitweb.ps.run Git - ps-cgit/commitdiff
segfault fix on some bogus requests
authorEric Wong <normalperson@yhbt.net>
Wed, 4 Jan 2012 09:01:51 +0000 (09:01 +0000)
committerLars Hjemli <hjemli@gmail.com>
Sun, 18 Mar 2012 09:26:31 +0000 (09:26 +0000)
ctx.qry.head can be NULL in some cases due to bad requests
by weird bots.  I managed to reproduce with:

   PATH_INFO=/repo.git/shop.php QUERY_STRING=id=

Signed-off-by: Eric Wong <normalperson@yhbt.net>
ui-shared.c

index 3e9282f35c0e032251b26ab00bd7f35e3bb7aee0..d7d75bf0cf56b8581fb382b7ee2f996e38a32758 100644 (file)
@@ -294,7 +294,7 @@ void cgit_log_link(const char *name, const char *title, const char *class,
        char *delim;
 
        delim = repolink(title, class, "log", head, path);
-       if (rev && strcmp(rev, ctx.qry.head)) {
+       if (rev && ctx.qry.head && strcmp(rev, ctx.qry.head)) {
                html(delim);
                html("id=");
                html_url_arg(rev);
@@ -338,7 +338,7 @@ void cgit_commit_link(char *name, const char *title, const char *class,
        char *delim;
 
        delim = repolink(title, class, "commit", head, path);
-       if (rev && strcmp(rev, ctx.qry.head)) {
+       if (rev && ctx.qry.head && strcmp(rev, ctx.qry.head)) {
                html(delim);
                html("id=");
                html_url_arg(rev);