about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFerry Huberts <ferry.huberts@pelagic.nl>2011-03-09 08:16:59 +0100
committerLars Hjemli <hjemli@gmail.com>2011-03-26 15:13:35 +0100
commit5db02854e64fa41aa459ea7d13fc827063deda41 (patch)
tree8db8d588e5d1f2bf3ede996e5907569389677eb8
parentsource_filter: fix a memory leak (diff)
downloadcgit-pink-5db02854e64fa41aa459ea7d13fc827063deda41.tar.gz
cgit-pink-5db02854e64fa41aa459ea7d13fc827063deda41.zip
new_filter: correctly initialise all arguments for a new filter
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--cgit.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/cgit.c b/cgit.c
index f4dd6ef..e302a7c 100644
--- a/cgit.c
+++ b/cgit.c
@@ -29,15 +29,17 @@ void add_mimetype(const char *name, const char *value)
 struct cgit_filter *new_filter(const char *cmd, int extra_args)
 {
 	struct cgit_filter *f;
+	int args_size = 0;
 
 	if (!cmd || !cmd[0])
 		return NULL;
 
 	f = xmalloc(sizeof(struct cgit_filter));
 	f->cmd = xstrdup(cmd);
-	f->argv = xmalloc((2 + extra_args) * sizeof(char *));
+	args_size = (2 + extra_args) * sizeof(char *);
+	f->argv = xmalloc(args_size);
+	memset(f->argv, 0, args_size);
 	f->argv[0] = f->cmd;
-	f->argv[1] = NULL;
 	return f;
 }