]> git.cameronkatri.com Git - cgit.git/blobdiff - ui-summary.c
git: update to v2.28.0
[cgit.git] / ui-summary.c
index cd1fef554eb8833cf7acfdd7ae689a46be6b8fe3..947812a814caff74bab85079ab7559640d7f5753 100644 (file)
@@ -9,9 +9,10 @@
 #include "cgit.h"
 #include "ui-summary.h"
 #include "html.h"
+#include "ui-blob.h"
 #include "ui-log.h"
+#include "ui-plain.h"
 #include "ui-refs.h"
-#include "ui-blob.h"
 #include "ui-shared.h"
 
 static int urls;
@@ -48,6 +49,7 @@ void cgit_print_summary(void)
        if (ctx.repo->enable_log_linecount)
                columns++;
 
+       cgit_print_layout_start();
        html("<table summary='repository info' class='list nowrap'>");
        cgit_print_branches(ctx.cfg.summary_branches);
        htmlf("<tr class='nohover'><td colspan='%d'>&nbsp;</td></tr>", columns);
@@ -60,6 +62,7 @@ void cgit_print_summary(void)
        urls = 0;
        cgit_add_clone_urls(print_url);
        html("</table>");
+       cgit_print_layout_end();
 }
 
 /* The caller must free the return value. */
@@ -96,11 +99,21 @@ static char* append_readme_path(const char *filename, const char *ref, const cha
        return full_path;
 }
 
-void cgit_print_repo_readme(char *path)
+void cgit_print_repo_readme(const char *path)
 {
-       char *filename, *ref;
+       char *filename, *ref, *mimetype;
        int free_filename = 0;
 
+       mimetype = get_mimetype_for_filename(path);
+       if (mimetype && (!strncmp(mimetype, "image/", 6) || !strncmp(mimetype, "video/", 6))) {
+               ctx.page.mimetype = mimetype;
+               ctx.page.charset = NULL;
+               cgit_print_plain();
+               free(mimetype);
+               return;
+       }
+       free(mimetype);
+
        cgit_print_layout_start();
        if (ctx.repo->readme.nr == 0)
                goto done;