From 1b09cbd303d889ec2636127584d57b7f1b70c25e Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Sat, 05 Mar 2011 13:01:59 +0000 Subject: Merge branch 'stable' --- diff --git a/Makefile b/Makefile index a988751..14b4df4 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -CGIT_VERSION = v0.8.3.4 +CGIT_VERSION = v0.8.3.5 CGIT_SCRIPT_NAME = cgit.cgi CGIT_SCRIPT_PATH = /var/www/htdocs/cgit CGIT_DATA_PATH = $(CGIT_SCRIPT_PATH) @@ -241,4 +241,4 @@ clean-doc: rm -f cgitrc.5 cgitrc.5.html cgitrc.5.pdf cgitrc.5.xml cgitrc.5.fo get-git: - curl $(GIT_URL) | tar -xj && rm -rf git && mv git-$(GIT_VER) git + curl $(GIT_URL) | tar -xjf - && rm -rf git && mv git-$(GIT_VER) git diff --git a/cgit.c b/cgit.c index 916feb4..f4dd6ef 100644 --- a/cgit.c +++ b/cgit.c @@ -752,10 +752,11 @@ int main(int argc, const char **argv) http_parse_querystring(ctx.qry.raw, querystring_cb); /* If virtual-root isn't specified in cgitrc, lets pretend - * that virtual-root equals SCRIPT_NAME. + * that virtual-root equals SCRIPT_NAME, minus any possibly + * trailing slashes. */ if (!ctx.cfg.virtual_root) - ctx.cfg.virtual_root = ctx.cfg.script_name; + ctx.cfg.virtual_root = trim_end(ctx.cfg.script_name, '/'); /* If no url parameter is specified on the querystring, lets * use PATH_INFO as url. This allows cgit to work with virtual diff --git a/html.c b/html.c index a1fe87d..a60bc13 100644 --- a/html.c +++ b/html.c @@ -277,7 +277,7 @@ char *convert_query_hexchar(char *txt) d1 = hextoint(*(txt+1)); d2 = hextoint(*(txt+2)); if (d1<0 || d2<0) { - memmove(txt, txt+3, n-3); + memmove(txt, txt+3, n-2); return txt-1; } else { *txt = d1 * 16 + d2; diff --git a/ui-shared.c b/ui-shared.c index 7efae7a..5aa9119 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -574,7 +574,7 @@ void cgit_print_http_headers(struct cgit_context *ctx) else if (ctx->page.mimetype) htmlf("Content-Type: %s\n", ctx->page.mimetype); if (ctx->page.size) - htmlf("Content-Length: %ld\n", ctx->page.size); + htmlf("Content-Length: %zd\n", ctx->page.size); if (ctx->page.filename) htmlf("Content-Disposition: inline; filename=\"%s\"\n", ctx->page.filename); -- cgit v0.9.0.2