diff options
author | Vicent Marti <tanoku@gmail.com> | 2012-08-06 12:41:08 +0200 |
---|---|---|
committer | Vicent Marti <tanoku@gmail.com> | 2012-08-06 12:41:08 +0200 |
commit | 51e1d8084641bd36416bf6f127b31d47d64cce69 (patch) | |
tree | 1a95e6b4c664020eb4bbff843eead794f3ee3d35 /src/pack.c | |
parent | 7e9f78b5fee2d8f56711a587c35fcba10d370547 (diff) | |
parent | b0d376695e7d3f71fed97d9d08b60661faad7a5a (diff) | |
download | libgit2-51e1d8084641bd36416bf6f127b31d47d64cce69.tar.gz |
Merge remote-tracking branch 'arrbee/tree-walk-fixes' into development
Conflicts:
src/notes.c
src/transports/git.c
src/transports/http.c
src/transports/local.c
tests-clar/odb/foreach.c
Diffstat (limited to 'src/pack.c')
-rw-r--r-- | src/pack.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/pack.c b/src/pack.c index 40c90d1f0..e1fa085fd 100644 --- a/src/pack.c +++ b/src/pack.c @@ -687,10 +687,9 @@ static git_off_t nth_packed_object_offset(const struct git_pack_file *p, uint32_ } int git_pack_foreach_entry( - struct git_pack_file *p, - int (*cb)(git_oid *oid, void *data), - void *data) - + struct git_pack_file *p, + int (*cb)(git_oid *oid, void *data), + void *data) { const unsigned char *index = p->index_map.data, *current; unsigned stride; @@ -722,7 +721,9 @@ int git_pack_foreach_entry( current = index; for (i = 0; i < p->num_objects; i++) { - cb((git_oid *)current, data); + if (cb((git_oid *)current, data)) + return GIT_EUSER; + current += stride; } |