threads / patch / 2885

patchFix unconditional early exit in cg-fetch v2

Subject: [PATCH] Fix unconditional early exit in cg-fetch v2

## tl;dr

One message between Dec 20, 2005 and Dec 20, 2005. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Paolo 'Blaisorblade' Giarrusso· Dec 20, 2005, 15:24 UTC · lore
From: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>

When invoking cg-fetch, after fetching tags it exits here, for an overlooked error handling. Replace the exit with an early return.

This means, for instance, we exit without reporting the tag updates and without removing the "fetch in progress" marker - leading to unconditional "Recovering from interrupted fetch" at the very beginning with rsync transport. Indeed, this is fixed by this patch.

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
---
 cg-fetch |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
Show changes to cg-fetch +3 −2
diff --git a/cg-fetch b/cg-fetch
index a2865ae..074aa14 100755
--- a/cg-fetch
+++ b/cg-fetch
@@ -189,9 +189,10 @@ fetch_tags()
 	[ -d "$_git/refs/tags" ] || mkdir -p "$_git/refs/tags"
 
 	if [ "$get" = "get_rsync" ]; then
-		$get -i -s -u -d "$uri/refs/tags" "$_git/refs/tags" ||
+		if ! $get -i -s -u -d "$uri/refs/tags" "$_git/refs/tags"; then
 			echo "unable to get tags list (non-fatal)" >&2
-		exit $?
+			return $?
+		fi
 	fi
 
 	git-ls-remote --tags "$uri" |

← back to recent threads