On Feb 3, 2007, at 2:06 PM, Wolfgang Fischer wrote:
A simple test would be to create a UFS image, mount it somewhere, and run the tests inside the mounted UFS image. If the test succeeds, there is a getdirent() somewhere in the codepath, where you are not expecting it. OTOH we can assume already, that there is a getdirents() somewhere, so you might just start with a debugger with an appropriate breakpoint.
The true solution was to read the code more completely. The way git tests for things that are ignored is to read the directory and compare it to the pathspecs from the command line. If we don't find a match, it's obviously because the file was in an ignore file. Unfortunately, in OS X it's not obvious because of the mismatch between NFC and NFD on different file systems.
The solution, as I see it, is to use a Unicode-aware comparison in dir.c:match_one(). ICU appears to both be available on OS X (although without headers) and have the needed functions. I'm unfamiliar with both ICU and this chunk of the git internals, but I'll work on a proof of concept patch.
~~ Brian - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html