summaryrefslogtreecommitdiff
path: root/src/fetchhead.c
diff options
context:
space:
mode:
authorVicent Marti <vicent@github.com>2013-12-13 06:20:19 -0800
committerVicent Marti <vicent@github.com>2013-12-13 06:20:19 -0800
commit79194bcdc956406979cd27ac99198826860d3f20 (patch)
tree407594b97b6e39ef3ac0723dc33aa3162ce933cc /src/fetchhead.c
parent25a1fab0a96fd87e4ebc4ec195ac59a4213e92ad (diff)
parent7a16d54b5457aa9f60c25a204277ae0ce609ad2e (diff)
downloadlibgit2-79194bcdc956406979cd27ac99198826860d3f20.tar.gz
Merge pull request #1986 from libgit2/rb/error-handling-cleanups
Clean up some error handling and change callback error behavior
Diffstat (limited to 'src/fetchhead.c')
-rw-r--r--src/fetchhead.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/fetchhead.c b/src/fetchhead.c
index 67089d13d..4435454ef 100644
--- a/src/fetchhead.c
+++ b/src/fetchhead.c
@@ -260,8 +260,8 @@ int git_repository_fetchhead_foreach(git_repository *repo,
while ((line = git__strsep(&buffer, "\n")) != NULL) {
++line_num;
- if ((error = fetchhead_ref_parse(&oid, &is_merge, &name, &remote_url,
- line, line_num)) < 0)
+ if ((error = fetchhead_ref_parse(
+ &oid, &is_merge, &name, &remote_url, line, line_num)) < 0)
goto done;
if (git_buf_len(&name) > 0)
@@ -269,8 +269,9 @@ int git_repository_fetchhead_foreach(git_repository *repo,
else
ref_name = NULL;
- if ((cb(ref_name, remote_url, &oid, is_merge, payload)) != 0) {
- error = GIT_EUSER;
+ error = cb(ref_name, remote_url, &oid, is_merge, payload);
+ if (error) {
+ giterr_set_after_callback(error);
goto done;
}
}