]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-shared.c
ui-shared: don't print path crumbs without a repo
[ps-cgit] / ui-shared.c
index 3fa36d6742138ec33e278e7ebb8be857bcfd7684..e5c9a02f9f08773eda336ba603ecd74edcf38953 100644 (file)
@@ -1039,7 +1039,7 @@ void cgit_print_pageheader(void)
                free(currenturl);
        }
        html("</td></tr></table>\n");
-       if (ctx.env.authenticated && ctx.qry.vpath) {
+       if (ctx.env.authenticated && ctx.repo && ctx.qry.vpath) {
                html("<div class='path'>");
                html("path: ");
                cgit_print_path_crumbs(ctx.qry.vpath);
@@ -1074,18 +1074,18 @@ void cgit_print_filemode(unsigned short mode)
 void cgit_compose_snapshot_prefix(struct strbuf *filename, const char *base,
                                  const char *ref)
 {
-       unsigned char sha1[20];
+       struct object_id oid;
 
        /*
         * Prettify snapshot names by stripping leading "v" or "V" if the tag
         * name starts with {v,V}[0-9] and the prettify mapping is injective,
         * i.e. each stripped tag can be inverted without ambiguities.
         */
-       if (get_sha1(fmt("refs/tags/%s", ref), sha1) == 0 &&
+       if (get_oid(fmt("refs/tags/%s", ref), &oid) == 0 &&
            (ref[0] == 'v' || ref[0] == 'V') && isdigit(ref[1]) &&
-           ((get_sha1(fmt("refs/tags/%s", ref + 1), sha1) == 0) +
-            (get_sha1(fmt("refs/tags/v%s", ref + 1), sha1) == 0) +
-            (get_sha1(fmt("refs/tags/V%s", ref + 1), sha1) == 0) == 1))
+           ((get_oid(fmt("refs/tags/%s", ref + 1), &oid) == 0) +
+            (get_oid(fmt("refs/tags/v%s", ref + 1), &oid) == 0) +
+            (get_oid(fmt("refs/tags/V%s", ref + 1), &oid) == 0) == 1))
                ref++;
 
        strbuf_addf(filename, "%s-%s", base, ref);