about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Keeping <john@keeping.me.uk>2013-04-07 12:46:45 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2013-04-08 15:59:51 +0200
commit57d09bf448990b3a67436e928807e854e491756f (patch)
treef98b55d814936d416c42f9ca14067934c6e280bc
parentFix out-of-bounds memory accesses with virtual_root="" (diff)
downloadcgit-magenta-57d09bf448990b3a67436e928807e854e491756f.tar.xz
Mark char* fields in struct cgit_page as const
Signed-off-by: John Keeping <john@keeping.me.uk>
-rw-r--r--cgit.h12
-rw-r--r--ui-plain.c3
2 files changed, 8 insertions, 7 deletions
diff --git a/cgit.h b/cgit.h

index fc3fc6f..7581cc1 100644 --- a/cgit.h +++ b/cgit.h
@@ -245,13 +245,13 @@ struct cgit_page { time_t modified; time_t expires; size_t size; - char *mimetype; - char *charset; - char *filename; - char *etag; - char *title; + const char *mimetype; + const char *charset; + const char *filename; + const char *etag; + const char *title; int status; - char *statusmsg; + const char *statusmsg; }; struct cgit_environment { diff --git a/ui-plain.c b/ui-plain.c
index 4397a59..482d53a 100644 --- a/ui-plain.c +++ b/ui-plain.c
@@ -100,8 +100,9 @@ static int print_object(const unsigned char *sha1, const char *path) ctx.page.etag = sha1_to_hex(sha1); cgit_print_http_headers(&ctx); html_raw(buf, size); + /* If we allocated this, then casting away const is safe. */ if (freemime) - free(ctx.page.mimetype); + free((char*) ctx.page.mimetype); return 1; }