aboutsummaryrefslogtreecommitdiff
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
-rw-r--r--cgit.c2
-rw-r--r--cgit.h1
-rw-r--r--ui-blob.c1
3 files changed, 4 insertions, 0 deletions
diff --git a/cgit.c b/cgit.c
index 3ed1935..05e5d57 100644
--- a/cgit.c
+++ b/cgit.c
@@ -314,6 +314,8 @@ static void querystring_cb(const char *name, const char *value)
ctx.qry.path = trim_end(value, '/');
} else if (!strcmp(name, "name")) {
ctx.qry.name = xstrdup(value);
+ } else if (!strcmp(name, "mimetype")) {
+ ctx.qry.mimetype = xstrdup(value);
} else if (!strcmp(name, "s")) {
ctx.qry.sort = xstrdup(value);
} else if (!strcmp(name, "showmsg")) {
diff --git a/cgit.h b/cgit.h
index 4b4bcf4..b7eccdd 100644
--- a/cgit.h
+++ b/cgit.h
@@ -173,6 +173,7 @@ struct cgit_query {
char *sha2;
char *path;
char *name;
+ char *mimetype;
char *url;
char *period;
int ofs;
diff --git a/ui-blob.c b/ui-blob.c
index 2cce11c..1ded839 100644
--- a/ui-blob.c
+++ b/ui-blob.c
@@ -161,6 +161,7 @@ void cgit_print_blob(const char *hex, char *path, const char *head, int file_onl
}
buf[size] = '\0';
+ ctx.page.mimetype = ctx.qry.mimetype;
if (!ctx.page.mimetype) {
if (buffer_is_binary(buf, size))
ctx.page.mimetype = "application/octet-stream";