Re: [PATCH v3] Demonstrate bugs when a directory is replaced with a symlink
Linus Torvalds <torvalds@linux-foundation.org> writes:
Show 22 quoted lines
> On Wed, 29 Jul 2009, Pickens, James E wrote:
>>
>> This test creates two directories, a/b and a/b-2, then replaces a/b with
>> a symlink to a/b-2, then merges that change into the 'baseline' commit,
>> which contains an unrelated change.
>
> Great tests.
>
> This patch should fix the 'checkout' issue.
>
> I made it use a new generic helper function ("check_path()"), since there
> are other cases like this that use just 'lstat()', and I bet we want to
> change that.
>
> The 'merge' issue is different, though: it's not due to a blind 'lstat()',
> but due to a blind 'unlink()' done by 'remove_path()'. I think
> 'remove_path()' should be taught to look for symlinks, and remove just the
> symlink - but that's a bit more work, especially since the symlink cache
> doesn't seem to expose any way to get the "what is the first symlink path"
> information.
>
> Kjetil, can you look at that? Yes, I will take a look. Also, on all the other mails CC'ed to me
today. Give me a cople of days.
Sorry, I do not work at "full normal speed" for the moment. But, I
will try to my best.
-- kjetil