about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2011-05-22 12:45:32 +0200
committerLars Hjemli <hjemli@gmail.com>2011-05-23 22:58:35 +0200
commitdc1a8eadd4c063fe6782fa99f9db41c46b85d048 (patch)
treeb946f7378d4a4e846c2b247ee7ed12b3f0784e7e
parenttests: add tests for links with space in path and/or args (diff)
downloadcgit-pink-dc1a8eadd4c063fe6782fa99f9db41c46b85d048.tar.gz
cgit-pink-dc1a8eadd4c063fe6782fa99f9db41c46b85d048.zip
shared.c: do not modify const memory
Noticed-by: zhongjj <zhongjj@lemote.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--shared.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/shared.c b/shared.c
index 7ec2e19..3926b4a 100644
--- a/shared.c
+++ b/shared.c
@@ -100,23 +100,15 @@ void *cgit_free_commitinfo(struct commitinfo *info)
 char *trim_end(const char *str, char c)
 {
 	int len;
-	char *s, *t;
 
 	if (str == NULL)
 		return NULL;
-	t = (char *)str;
-	len = strlen(t);
-	while(len > 0 && t[len - 1] == c)
+	len = strlen(str);
+	while(len > 0 && str[len - 1] == c)
 		len--;
-
 	if (len == 0)
 		return NULL;
-
-	c = t[len];
-	t[len] = '\0';
-	s = xstrdup(t);
-	t[len] = c;
-	return s;
+	return xstrndup(str, len);
 }
 
 char *strlpart(char *txt, int maxlen)
to other /about/ pages. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> 2015-08-12filters: apply HTML escapingLazaros Koromilas http://www.w3.org/International/questions/qa-escapes#use 2015-08-12git: update to v2.5.0Christian Hesse Update to git version v2.5.0. * Upstream commit 5455ee0573a22bb793a7083d593ae1ace909cd4c (Merge branch 'bc/object-id') changed API: for_each_ref() callback functions were taught to name the objects not with "unsigned char sha1[20]" but with "struct object_id". * Upstream commit dcf692625ac569fefbe52269061230f4fde10e47 (path.c: make get_pathname() call sites return const char *) Signed-off-by: Christian Hesse <mail@eworm.de> 2015-08-12Fix processing of repo.hide and repo.ignoreDaniel Reichelt