aboutsummaryrefslogtreecommitdiff
path: root/sha1-array.h
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2016-09-26 08:00:29 -0400
committerJunio C Hamano <gitster@pobox.com>2016-09-26 11:46:41 -0700
commit16ddcd403bdd74f47f3ae1a7e58a01e36e54a7d7 (patch)
treeb4d5e1936a7d013ef20107a1e4901650ea38d1df /sha1-array.h
parent0c99171ad2f79430eb81214d3f1d8ced3d3621e3 (diff)
downloadgit-16ddcd403bdd74f47f3ae1a7e58a01e36e54a7d7.tar.gz
git-16ddcd403bdd74f47f3ae1a7e58a01e36e54a7d7.tar.xz
sha1_array: let callbacks interrupt iteration
The callbacks for iterating a sha1_array must have a void return. This is unlike our usual for_each semantics, where a callback may interrupt iteration and have its value propagated. Let's switch it to the usual form, which will enable its use in more places (e.g., where we are replacing an existing iteration with a different data structure). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'sha1-array.h')
-rw-r--r--sha1-array.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/sha1-array.h b/sha1-array.h
index 72bb33bec..b3230be0d 100644
--- a/sha1-array.h
+++ b/sha1-array.h
@@ -14,10 +14,10 @@ void sha1_array_append(struct sha1_array *array, const unsigned char *sha1);
int sha1_array_lookup(struct sha1_array *array, const unsigned char *sha1);
void sha1_array_clear(struct sha1_array *array);
-typedef void (*for_each_sha1_fn)(const unsigned char sha1[20],
- void *data);
-void sha1_array_for_each_unique(struct sha1_array *array,
- for_each_sha1_fn fn,
+typedef int (*for_each_sha1_fn)(const unsigned char sha1[20],
void *data);
+int sha1_array_for_each_unique(struct sha1_array *array,
+ for_each_sha1_fn fn,
+ void *data);
#endif /* SHA1_ARRAY_H */