On Thu, 14 Jul 2005, Junio C Hamano wrote:
> The bisect search found that the commit
>       Make "git-checkout" create files with O_EXCL
> makes the test t1005 fail.  But it is getting late so I give up
> to figuire this out tonight.

Ahh, thanks for noticing.

It says

        * expecting success: rm -f .git/index &&
             rm -fr DF &&
             mkdir DF &&
             echo DF/DF >DF/DF &&
             git-update-cache --add DF/DF &&
             read_tree_twoway $treeDFDF $treeDF &&
             git-ls-files --stage >DFDFcheck.out &&
             diff -u DF.out DFDFcheck.out &&
             check_cache_at DF clean && # different from pure 2-way
        100644 052efc3abbc31348f7abd34535b1953d38273257 3       DF
        100644 b90ea14b2dd74b6f377c10870b3757344bbe077c 1       DF/DF
        100644 b90ea14b2dd74b6f377c10870b3757344bbe077c 2       DF/DF
        Adding DF
        error: git-checkout-cache: unable to create file DF (File exists)
        Removing DF/DF
        100644 052efc3abbc31348f7abd34535b1953d38273257 0       DF
        DF: dirty
        * FAIL 24: DF vs DF/DF case test (#2) rm -f .git/index &&

Which is strange. If the path already exists, the "lstat(path, &st)" 
should have returned 0 in checkout_entry (which is the only caller of 
"write_entry()"), and that code does an "unlink(path)" before it calls 
write-entry. So I was sure O_EXCL wouldn't make any difference, but I'm 
obviously wrong, wrong, wrong.

I'll strace the dang thing.

To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to