aboutsummaryrefslogtreecommitdiffstats
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-57d09bf448990b3a67436e928807e854e491756f.tar.xz
cgit-57d09bf448990b3a67436e928807e854e491756f.zip
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;
}