From 063da62b02aeafe58fdacce0ea48c0761b06df60 Mon Sep 17 00:00:00 2001 From: Christian Couder Date: Mon, 7 Jul 2014 08:35:37 +0200 Subject: commit: add for_each_mergetag() In the same way as there is for_each_ref() to iterate on refs, for_each_mergetag() allows the caller to iterate on the mergetags of a given commit. Use it to rewrite show_mergetag() used in "git log". Signed-off-by: Christian Couder Signed-off-by: Junio C Hamano --- commit.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'commit.h') diff --git a/commit.h b/commit.h index 2e1492a6e4..b695aa4a5b 100644 --- a/commit.h +++ b/commit.h @@ -312,6 +312,11 @@ extern struct commit_extra_header *read_commit_extra_headers(struct commit *, co extern void free_commit_extra_headers(struct commit_extra_header *extra); +typedef void (*each_mergetag_fn)(struct commit *commit, struct commit_extra_header *extra, + void *cb_data); + +extern void for_each_mergetag(each_mergetag_fn fn, struct commit *commit, void *data); + struct merge_remote_desc { struct object *obj; /* the named object, could be a tag */ const char *name; -- cgit v1.2.3