all repos — cgit @ 790d2498cbc7ad60f8eef31db0467cfc97e0593b

a hyperfast web frontend for git written in c

ui-summary: send images plain for about page

The about page used to display just fine, but images were broken: The
binary image data was embedded in html code.
Use cgit_print_plain() to send images in plain mode and make them
available on about page.

Signed-off-by: Christian Hesse <mail@eworm.de>
Christian Hesse mail@eworm.de
Sun, 16 Aug 2015 14:53:53 +0200
commit

790d2498cbc7ad60f8eef31db0467cfc97e0593b

parent

aa943bc9a68ccdcc5cbe29f6ac3b5e787d4c22ca

1 files changed, 13 insertions(+), 2 deletions(-)

jump to
M ui-summary.cui-summary.c

@@ -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;

@@ -100,8 +101,18 @@ }

void cgit_print_repo_readme(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)