Merge pull request #3812 from stinb/fetch-tag-update-callback fetch: Fixed spurious update callback for existing tags.
diff --git a/src/remote.c b/src/remote.c
index 5ff7f68..a408acb 100644
--- a/src/remote.c
+++ b/src/remote.c
@@ -1423,7 +1423,11 @@ static int update_tips_for_spec(
/* In autotag mode, don't overwrite any locally-existing tags */
error = git_reference_create(&ref, remote->repo, refname.ptr, &head->oid, !autotag,
log_message);
- if (error < 0 && error != GIT_EEXISTS)
+
+ if (error == GIT_EEXISTS)
+ continue;
+
+ if (error < 0)
goto on_error;
git_reference_free(ref);