about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorMichael Krelin2008-06-24 23:42:32 +0200
committerMichael Krelin2008-06-24 23:42:32 +0200
commit42effc939090b2fbf1b2b76cd1d9c30fabcd230e (patch)
treeba75a2bc400a2a1dab6417b33b97a0d020fabf0f
parentallow blob extract blobs by head/path combination (diff)
downloadcgit-42effc939090b2fbf1b2b76cd1d9c30fabcd230e.tar.gz
cgit-42effc939090b2fbf1b2b76cd1d9c30fabcd230e.zip
allow specification of directly linked blobs mimetypes
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r--cgit.c2
-rw-r--r--cgit.h1
-rw-r--r--ui-blob.c2
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);