diff options
Diffstat (limited to 'src/diff.c')
-rw-r--r-- | src/diff.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/diff.c b/src/diff.c index b7657e432..83adc2a8c 100644 --- a/src/diff.c +++ b/src/diff.c @@ -60,7 +60,11 @@ static int diff_insert_delta( if (error) { git__free(delta); - return (error > 0) ? 0 : giterr_set_callback(error, "git_diff"); + + if (error > 0) /* positive value means to skip this delta */ + return 0; + else /* negative value means to cancel diff */ + return giterr_set_after_callback_function(error, "git_diff"); } } @@ -1389,7 +1393,7 @@ int git_diff__paired_foreach( } if ((error = cb(h2i, i2w, payload)) != 0) { - GITERR_CALLBACK(error); + giterr_set_after_callback(error); break; } } |