Re: [PATCH] Segmentation fault on non-commit objects.
From: Jeff King <hidden>
Date: 2019-10-31 05:37:36
On Wed, Oct 30, 2019 at 11:44:23AM +0900, Junio C Hamano wrote:
Jeff King [off-list ref] writes:quoted
This is definitely a strict improvement over the current behavior (though I agree with Dscho's comments on the error message). A few further thoughts: - we'll have successfully completed the rest of the clone at this point. Should we leave the objects and refs in place to allow the user to fix it up, as we do when "git checkout" fails? We'd have to leave _something_ in HEAD for it to be a valid repo. I guess just "refs/heads/master" would be fine, or perhaps we could fall back to whatever the other side had in their HEAD (i.e., pretending that "-b" wasn't specified).Do we know for sure that the object at HEAD on the other side is a commit, or do we need to prepare for a case where it is not? I suspect it is the latter. HEAD needs to exist and point at a ref that is in refs/heads/ hierarchy, and the ref can even be unborn, so falling back on 'master' sounds like a good position.
Yeah, I don't think that we do. This is the same as the case I mentioned later, and it should be handled in all three arms of the conditional. Davide, do you have an interest in trying to make these code paths a bit more robust? -Peff