summaryrefslogtreecommitdiff
path: root/apply.c
diff options
context:
space:
mode:
authorAlex Riesen <raa.lkml@gmail.com>2006-01-05 09:00:12 (GMT)
committerJunio C Hamano <junkio@cox.net>2006-01-06 01:22:49 (GMT)
commitd9e08be9d5b632aed84d4ee870543babafe6614b (patch)
tree7bd5e3696d0f562d9991b76be18a0959921813ee /apply.c
parent781411ed46400f95c45c5ca103769288025b39d6 (diff)
downloadgit-d9e08be9d5b632aed84d4ee870543babafe6614b.zip
git-d9e08be9d5b632aed84d4ee870543babafe6614b.tar.gz
git-d9e08be9d5b632aed84d4ee870543babafe6614b.tar.bz2
fix potential deadlock in create_one_file
It can happen if the temporary file already exists (i.e. after a panic and reboot). Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'apply.c')
-rw-r--r--apply.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/apply.c b/apply.c
index 9eba034..c471a82 100644
--- a/apply.c
+++ b/apply.c
@@ -1635,7 +1635,8 @@ static void create_one_file(const char *path, unsigned mode, const char *buf, un
}
if (errno != EEXIST)
break;
- }
+ ++nr;
+ }
}
die("unable to write file %s mode %o", path, mode);
}