"Shawn O. Pearce" <spearce@xxxxxxxxxxx> wrote: > Back in e3c6f240fd9c5bdeb33f2d47adc859f37935e2df Junio taught > git-fetch to avoid copying objects when we are fetching from > a repository that is already registered as an alternate object > database. In such a case there is no reason to copy any objects > as we can already obtain them through the alternate. I haven't figured it out yet but this patch seriously breaks t5515-fetch-merge-logic. For some reason the tag tag-three-file is not being included in .git/FETCH_HEAD as a not-for-merge ref, but all of the test vectors are expecting it to be present. Prior to this patch it was included and I don't think the test vectors are wrong. If I run git-fetch from outside the test library it does the right thing and fetches this annotated tag pointing to a blob just fine. But during the test vector it never even mentions that tag as part of the status output, nor does it include it into .git/FETCH_HEAD. Its almost like the tag ain't there. I'm starting to suspect heap corruption again in builtin-fetch. This patch alters the malloc() calls we are doing and may be shifting something around just enough in memory to cause a data overwrite or something and that's why this tag just drops out of the linked list? But then why does that happen in the test suite but not outside. Maybe because the test suite is setting environment variables that I'm not and the impact of those combined with these additional mallocs is what is breaking it? *sigh* -- Shawn. - 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