diff options
| -rw-r--r-- | ui-summary.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/ui-summary.c b/ui-summary.c index fb04dc3..8e81ac4 100644 --- a/ui-summary.c +++ b/ui-summary.c | |||
| @@ -9,9 +9,10 @@ | |||
| 9 | #include "cgit.h" | 9 | #include "cgit.h" |
| 10 | #include "ui-summary.h" | 10 | #include "ui-summary.h" |
| 11 | #include "html.h" | 11 | #include "html.h" |
| 12 | #include "ui-blob.h" | ||
| 12 | #include "ui-log.h" | 13 | #include "ui-log.h" |
| 14 | #include "ui-plain.h" | ||
| 13 | #include "ui-refs.h" | 15 | #include "ui-refs.h" |
| 14 | #include "ui-blob.h" | ||
| 15 | #include "ui-shared.h" | 16 | #include "ui-shared.h" |
| 16 | 17 | ||
| 17 | static int urls; | 18 | static int urls; |
| @@ -100,9 +101,19 @@ static char* append_readme_path(const char *filename, const char *ref, const cha | |||
| 100 | 101 | ||
| 101 | void cgit_print_repo_readme(char *path) | 102 | void cgit_print_repo_readme(char *path) |
| 102 | { | 103 | { |
| 103 | char *filename, *ref; | 104 | char *filename, *ref, *mimetype; |
| 104 | int free_filename = 0; | 105 | int free_filename = 0; |
| 105 | 106 | ||
| 107 | mimetype = get_mimetype_for_filename(path); | ||
| 108 | if (mimetype && (!strncmp(mimetype, "image/", 6) || !strncmp(mimetype, "video/", 6))) { | ||
| 109 | ctx.page.mimetype = mimetype; | ||
| 110 | ctx.page.charset = NULL; | ||
| 111 | cgit_print_plain(); | ||
| 112 | free(mimetype); | ||
| 113 | return; | ||
| 114 | } | ||
| 115 | free(mimetype); | ||
| 116 | |||
| 106 | cgit_print_layout_start(); | 117 | cgit_print_layout_start(); |
| 107 | if (ctx.repo->readme.nr == 0) | 118 | if (ctx.repo->readme.nr == 0) |
| 108 | goto done; | 119 | goto done; |
