From: Junio C Hamano Date: Wed, 5 Dec 2007 07:01:19 +0000 (-0800) Subject: do not discard status in fetch_refs_via_pack() X-Git-Tag: v1.5.4-rc0~67 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=c6bc40058565fef3ec79840bf5e13ba0962cb3e4;p=git.git do not discard status in fetch_refs_via_pack() The code calls fetch_pack() to get the list of refs it fetched, and discards refs and always returns 0 to signal success. But builtin-fetch-pack.c::fetch_pack() has error cases. The function returns NULL if error is detected (shallow-support side seems to choose to die but I suspect that is easily fixable to error out as well). Make fetch_refs_via_pack() propagate that error to the caller. Acked-By: Daniel Barkalow Signed-off-by: Junio C Hamano --- diff --git a/transport.c b/transport.c index 3eb93b487..58e66f6c1 100644 --- a/transport.c +++ b/transport.c @@ -659,7 +659,7 @@ static int fetch_refs_via_pack(struct transport *transport, free(heads); free_refs(refs); free(dest); - return 0; + return (refs ? 0 : -1); } static int git_transport_push(struct transport *transport, int refspec_nr, const char **refspec, int flags)