about summary refs log tree commit diff
path: root/ui-shared.c
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2009-02-19 23:24:15 +0100
committerLars Hjemli <hjemli@gmail.com>2009-02-19 23:24:15 +0100
commit3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f (patch)
tree4ff1b54dfb2fc025771f39528165e9e46d93a0e0 /ui-shared.c
parentAdd support for ETag in 'plain' view (diff)
downloadcgit-pink-3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f.tar.gz
cgit-pink-3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f.zip
Add support for HEAD requests
This is a quick 'n dirty hack which makes cgit honor HEAD requests.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to '')
-rw-r--r--ui-shared.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ui-shared.c b/ui-shared.c
index 86a7d29..0dafc83 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -456,6 +456,8 @@ void cgit_print_age(time_t t, time_t max_relative, char *format)
 
 void cgit_print_http_headers(struct cgit_context *ctx)
 {
+	const char *method = getenv("REQUEST_METHOD");
+
 	if (ctx->page.mimetype && ctx->page.charset)
 		htmlf("Content-Type: %s; charset=%s\n", ctx->page.mimetype,
 		      ctx->page.charset);
@@ -471,6 +473,8 @@ void cgit_print_http_headers(struct cgit_context *ctx)
 	if (ctx->page.etag)
 		htmlf("ETag: \"%s\"\n", ctx->page.etag);
 	html("\n");
+	if (method && !strcmp(method, "HEAD"))
+		exit(0);
 }
 
 void cgit_print_docstart(struct cgit_context *ctx)