apply: check D/F conflicts more carefully.
commitc28c571c143a5145665f4bf334671ac3a7d0980c
authorJunio C Hamano <junkio@cox.net>
Mon, 17 Jul 2006 06:28:23 +0000 (16 23:28 -0700)
committerJunio C Hamano <junkio@cox.net>
Mon, 17 Jul 2006 06:28:36 +0000 (16 23:28 -0700)
tree713d684ddc39cc577b222449a1b340cfd2c5bec4
parent8641fb24ee3ab86bac62f88d31f6e92a9323f699
apply: check D/F conflicts more carefully.

When creating a new file where a directory used to be (or the user had
an empty directory) the code did not check the result from lstat() closely
enough, and mistakenly thought the path already existed in the working tree.

This does not fix the problem where you have a patch that creates a file
at "foo" and removes a file at "foo/bar" (which presumably is the last file
in "foo/" directory in the original).  For that, we would need to restructure
write_out_results() loop.

Signed-off-by: Junio C Hamano <junkio@cox.net>
builtin-apply.c