Re: t3010 broken by 2eac2a4
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 22, 2013, 21:43 UTC
- Message-ID
- <xmqq38q1qu3l.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <CAPig+cSEQLk2M+X5QP7mkm846wqqHRCjPHgO7O3URvNcsYO6+w@mail.gmail.com>
Eric Sunshine <sunshine@sunshineco.com> writes:
Show 22 quoted lines
> On Thu, Aug 22, 2013 at 5:32 PM, Junio C Hamano <gitster@pobox.com> wrote: >> Eric Sunshine <sunshine@sunshineco.com> writes: >> >>> On Thu, Aug 22, 2013 at 5:16 PM, Junio C Hamano <gitster@pobox.com> wrote: >>>> Eric Sunshine <sunshine@sunshineco.com> writes: >>>> >>>>> I can confirm this failure on OS X, however,... >>> >>> Thanks for the explanation. >> >> Now, I am curious how it breaks on OS X. >> >> My suspition is that "ignore_case" may have something to do with it, >> but what 2eac2a4c (ls-files -k: a directory only can be killed if >> the index has a non-directory, 2013-08-15) uses are the bog-standard >> cache_name_exists() and directory_exists_in_index(), so one of these >> internal API implementation has trouble on case insensitive >> filesystems, perhaps? I dunno. > > That's exactly my suspicion at the moment. It's an obvious difference > between Linux and OS X. I'm just in the process of trying to compare > between the two platforms.
Or perhaps de->d_type does not exist? In such a case, we end up doing get_index_dtype() via get_dtype(), but in this codepath I suspect that we do not want to. We are interested in the type of the entity on the filesystem.