diff options
author | Michael Krelin | 2008-06-24 23:42:32 +0200 |
---|---|---|
committer | Michael Krelin | 2008-06-24 23:42:32 +0200 |
commit | 42effc939090b2fbf1b2b76cd1d9c30fabcd230e (patch) | |
tree | ba75a2bc400a2a1dab6417b33b97a0d020fabf0f | |
parent | 01d2dce7e73e3f022d186de27dd5d15574144ca8 (diff) | |
download | cgit-42effc939090b2fbf1b2b76cd1d9c30fabcd230e.tar.gz cgit-42effc939090b2fbf1b2b76cd1d9c30fabcd230e.tar.bz2 cgit-42effc939090b2fbf1b2b76cd1d9c30fabcd230e.zip |
allow specification of directly linked blobs mimetypes
Signed-off-by: Michael Krelin <hacker@klever.net>
-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
@@ -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 | ||
@@ -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 | ||
@@ -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); |