From 29baf33d3e170c71bdf5bb92d5e2afb388541db9 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sun, 22 Aug 2021 11:54:35 -0300 Subject: src/lib.c: Differentiate between -1 and other errors when looping through Git references --- src/lib.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/lib.c') diff --git a/src/lib.c b/src/lib.c index 8f067b7..39a462b 100644 --- a/src/lib.c +++ b/src/lib.c @@ -1754,9 +1754,13 @@ static int repo_refs_write( while (!(e = git_branch_next(&ref, &_btype, branch_iter))) { e = repo_refs_branches_each(refs_fd, repo, ref); git_reference_free(ref); - if (e) { + if (e == -1) { + ret = -1; goto cleanup; } + if (e) { + ret = 1; + } } if (e != GIT_ITEROVER) { const git_error *const error = git_error_last(); @@ -1799,9 +1803,13 @@ static int repo_refs_write( while (!(e = git_reference_next(&ref, ref_iter))) { e = repo_refs_tags_each(refs_fd, repo, ref, project_name); git_reference_free(ref); - if (e) { + if (e == -1) { + ret = -1; goto cleanup; } + if (e) { + ret = 1; + } } if (e != GIT_ITEROVER) { const git_error *const error = git_error_last(); -- cgit v1.2.3