Re: [PATCH v3] untracked-cache: fix subdirectory handling
From: Duy Nguyen <hidden>
Date: 2016-06-15 23:06:14
On Sun, Aug 16, 2015 at 7:16 PM, Duy Nguyen [off-list ref] wrote:
On Sun, Aug 16, 2015 at 12:17 PM, David Turner [off-list ref] wrote:quoted
Previously, some calls lookup_untracked would pass a full path. But lookup_untracked assumes that the portion of the path up to and including to the untracked_cache_dir has been removed. So lookup_untracked would be looking in the untracked_cache for 'foo' for 'foo/bar' (instead of just looking for 'bar'). This would cause untracked cache corruption. Instead, treat_directory learns to track the base length of the parent directory, so that only the last path component is passed to lookup_untracked.Your v2 also fixes untracked_cache_invalidate_path(), which is not included here. Maybe it's in another patch?
No I was wrong. Your changes and the original code are effectively the same (I misread strrchr as strchr). But I think there's a bug somewhere as I'm writing tests to understand that code.. -- Duy