]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-diff.c
diff: move layout to page function
[ps-cgit] / ui-diff.c
index caebd5d9eea61053cdcf8c85672acd506a9e0b52..5d18296862c19ac33606cc7a12d01da416215ec8 100644 (file)
--- a/ui-diff.c
+++ b/ui-diff.c
@@ -403,19 +403,22 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
        if (!new_rev)
                new_rev = ctx.qry.head;
        if (get_sha1(new_rev, new_rev_sha1)) {
-               cgit_print_error("Bad object name: %s", new_rev);
+               cgit_print_error_page(404, "Not found",
+                       "Bad object name: %s", new_rev);
                return;
        }
        commit = lookup_commit_reference(new_rev_sha1);
        if (!commit || parse_commit(commit)) {
-               cgit_print_error("Bad commit: %s", sha1_to_hex(new_rev_sha1));
+               cgit_print_error_page(404, "Not found",
+                       "Bad commit: %s", sha1_to_hex(new_rev_sha1));
                return;
        }
        new_tree_sha1 = commit->tree->object.sha1;
 
        if (old_rev) {
                if (get_sha1(old_rev, old_rev_sha1)) {
-                       cgit_print_error("Bad object name: %s", old_rev);
+                       cgit_print_error_page(404, "Not found",
+                               "Bad object name: %s", old_rev);
                        return;
                }
        } else if (commit->parents && commit->parents->item) {
@@ -427,7 +430,8 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
        if (!is_null_sha1(old_rev_sha1)) {
                commit2 = lookup_commit_reference(old_rev_sha1);
                if (!commit2 || parse_commit(commit2)) {
-                       cgit_print_error("Bad commit: %s", sha1_to_hex(old_rev_sha1));
+                       cgit_print_error_page(404, "Not found",
+                               "Bad commit: %s", sha1_to_hex(old_rev_sha1));
                        return;
                }
                old_tree_sha1 = commit2->tree->object.sha1;
@@ -460,8 +464,10 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
        difftype = ctx.qry.has_difftype ? ctx.qry.difftype : ctx.cfg.difftype;
        use_ssdiff = difftype == DIFF_SSDIFF;
 
-       if (show_ctrls)
+       if (show_ctrls) {
+               cgit_print_layout_start();
                cgit_print_diff_ctrls();
+       }
 
        /*
         * Clicking on a link to a file in the diff stat should show a diff
@@ -489,4 +495,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
        if (!use_ssdiff)
                html("</td></tr>");
        html("</table>");
+
+       if (show_ctrls)
+               cgit_print_layout_end();
 }