From: Miklos Vajna Date: Mon, 17 Nov 2008 20:48:35 +0000 (+0100) Subject: builtin-branch: use strbuf in delete_branches() X-Git-Tag: v1.6.1-rc1~33 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=3c59c50d76cd479caf14cab73fdb09b68597d5e5;p=git.git builtin-branch: use strbuf in delete_branches() In case the length of branch name is greather then PATH_MAX-7, we write to unallocated memory otherwise. Signed-off-by: Miklos Vajna Signed-off-by: Junio C Hamano --- diff --git a/builtin-branch.c b/builtin-branch.c index 2b3613fea..b9149b78f 100644 --- a/builtin-branch.c +++ b/builtin-branch.c @@ -97,7 +97,6 @@ static int delete_branches(int argc, const char **argv, int force, int kinds) unsigned char sha1[20]; char *name = NULL; const char *fmt, *remote; - char section[PATH_MAX]; int i; int ret = 0; @@ -165,11 +164,12 @@ static int delete_branches(int argc, const char **argv, int force, int kinds) argv[i]); ret = 1; } else { + struct strbuf buf = STRBUF_INIT; printf("Deleted %sbranch %s.\n", remote, argv[i]); - snprintf(section, sizeof(section), "branch.%s", - argv[i]); - if (git_config_rename_section(section, NULL) < 0) + strbuf_addf(&buf, "branch.%s", argv[i]); + if (git_config_rename_section(buf.buf, NULL) < 0) warning("Update of config-file failed"); + strbuf_release(&buf); } }