diff options
-rw-r--r-- | cgit.c | 2 | ||||
-rw-r--r-- | cgit.h | 1 | ||||
-rw-r--r-- | ui-blob.c | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/cgit.c b/cgit.c index ac882c3..0deae12 100644 --- a/cgit.c +++ b/cgit.c | |||
@@ -144,6 +144,8 @@ static void querystring_cb(const char *name, const char *value) | |||
144 | ctx.qry.path = trim_end(value, '/'); | 144 | ctx.qry.path = trim_end(value, '/'); |
145 | } else if (!strcmp(name, "name")) { | 145 | } else if (!strcmp(name, "name")) { |
146 | ctx.qry.name = xstrdup(value); | 146 | ctx.qry.name = xstrdup(value); |
147 | } else if (!strcmp(name, "mimetype")) { | ||
148 | ctx.qry.mimetype = xstrdup(value); | ||
147 | } | 149 | } |
148 | } | 150 | } |
149 | 151 | ||
diff --git a/cgit.h b/cgit.h index 4fa5cf2..1972d75 100644 --- a/cgit.h +++ b/cgit.h | |||
@@ -116,6 +116,7 @@ struct cgit_query { | |||
116 | char *sha2; | 116 | char *sha2; |
117 | char *path; | 117 | char *path; |
118 | char *name; | 118 | char *name; |
119 | char *mimetype; | ||
119 | int ofs; | 120 | int ofs; |
120 | }; | 121 | }; |
121 | 122 | ||
diff --git a/ui-blob.c b/ui-blob.c index dd1bbce..73a8c1d 100644 --- a/ui-blob.c +++ b/ui-blob.c | |||
@@ -65,7 +65,7 @@ void cgit_print_blob(const char *hex, char *path, const char *head) | |||
65 | } | 65 | } |
66 | 66 | ||
67 | buf[size] = '\0'; | 67 | buf[size] = '\0'; |
68 | ctx.page.mimetype = NULL; | 68 | ctx.page.mimetype = ctx.qry.mimetype; |
69 | ctx.page.filename = path; | 69 | ctx.page.filename = path; |
70 | cgit_print_http_headers(&ctx); | 70 | cgit_print_http_headers(&ctx); |
71 | write(htmlfd, buf, size); | 71 | write(htmlfd, buf, size); |