From f59aac47f3839367d0da04019b0fc2bd61345225 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Sun, 30 Jul 2006 18:35:21 +0200 Subject: merge-recur: fix thinko in unique_path() This could result in a nasty infinite loop, or in bogus names (it used the strlen() of the newly allocated buffer instead of the original buffer). Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano diff --git a/merge-recursive.c b/merge-recursive.c index 6a796f2..5375a1b 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -477,9 +477,9 @@ static char *unique_path(const char *path, const char *branch) char *newpath = xmalloc(strlen(path) + 1 + strlen(branch) + 8 + 1); int suffix = 0; struct stat st; - char *p = newpath + strlen(newpath); + char *p = newpath + strlen(path); strcpy(newpath, path); - strcat(newpath, "~"); + *(p++) = '~'; strcpy(p, branch); for (; *p; ++p) if ('/' == *p) -- cgit v0.10.2-6-g49f6