Re: [PATCH v3] untracked-cache: fix subdirectory handling
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Aug 19, 2015, 11:39 UTC
- Message-ID
- <CACsJy8DUUmT0xvBtMiC41qt+f=a02W1F-+i5gWjounNmpLA1tQ@mail.gmail.com>
- In-Reply-To
- <CACsJy8C=rnqrJHqMBSQcBsD1ihSvztVCnQ46N2mzoeh=HFM6qw@mail.gmail.com>
On Sun, Aug 16, 2015 at 7:16 PM, Duy Nguyen <pclouds@gmail.com> wrote:
Show 14 quoted lines
> On Sun, Aug 16, 2015 at 12:17 PM, David Turner <dturner@twopensource.com> wrote: >> 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