Add callback data to for_each_ref() family.
authorJunio C Hamano <junkio@cox.net>
Thu, 21 Sep 2006 04:47:42 +0000 (21:47 -0700)
committerJunio C Hamano <junkio@cox.net>
Thu, 21 Sep 2006 04:47:42 +0000 (21:47 -0700)
commitcb5d709ff8a4bae19d57a470ba2b137c25938a44
treed64f4ca2150e36ed77e30df9a3c4261028d26ad2
parentcc4c4f0ce25cc3803197bc19c275fd6f59a2a511
Add callback data to for_each_ref() family.

This is a long overdue fix to the API for for_each_ref() family
of functions.  It allows the callers to specify a callback data
pointer, so that the caller does not have to use static
variables to communicate with the callback funciton.

The updated for_each_ref() family takes a function of type

int (*fn)(const char *, const unsigned char *, void *)

and a void pointer as parameters, and calls the function with
the name of the ref and its SHA-1 with the caller-supplied void
pointer as parameters.

The commit updates two callers, builtin-name-rev.c and
builtin-pack-refs.c as an example.

Signed-off-by: Junio C Hamano <junkio@cox.net>
18 files changed:
builtin-name-rev.c
builtin-pack-refs.c
builtin-prune.c
builtin-push.c
builtin-rev-parse.c
builtin-show-branch.c
describe.c
fetch-pack.c
fetch.c
fsck-objects.c
http-push.c
receive-pack.c
refs.c
refs.h
revision.c
send-pack.c
server-info.c
upload-pack.c