Re: [PATCH v2 1/1] macOS: ls-files path fails if path of workdir is NFD
- From
Torsten Bögershausen <tboegi@web.de>
- Date
- May 20, 2024, 19:21 UTC
- Message-ID
- <20240520192144.GA4111@tb-raspi4>
- In-Reply-To
- <xmqqikz8gxuc.fsf@gitster.g>
On Mon, May 20, 2024 at 11:08:43AM -0700, Junio C Hamano wrote:
Show 16 quoted lines
> Torsten Bögershausen <tboegi@web.de> writes: > > > Thanks so much for the detailed analysis, that is appreciated. > > To be honest, I have set core.precomposeunicode true globally, > > ... > > ... > > I am happy to provide a patch (a new testcase is already there), > > but for a change in the codebase I would need some help from an expert, > > to get the config-reading right both for hash_initialized > > (that is may be not about the hash-algorithn at all ?) > > and precompose. > > It does not sound like an issue with the hash algorithm. > > Why isn't the local config (presumably set with auto-probing when > the repository was initialized) being read?
I have the same question, kind of. The callstack provided does give some hints, but I was lost...
> Are we reading the core.precomposeunicode in some funny ways?
Not what I am aware of. But the order of initialization, when a git command is executed, some need a worktree or .git directory, some not, is somewhat beyond my yet expertise.
>Is per-worktree config involved that is trying to read from one but the auto-probing code > is setting it to another, or something silly like that?
No, not to my understanding. We have a "local" config (per repo), that is there and has the right value. However, for some reason we miss to read the repo-config here, when argv[] needs to be precomposed. Reading the global config does work, but if core.precomposeunicode is not set here, but set in the repo-config, we miss that.
> > Thanks for working well together, both of you.
Yes, please let someone join the force, reading the callstack(s) and try to find what is wrong here. I will try to do the same.