Commit c3fb7d04 by Russell Belfer

Make git_odb_foreach_cb take const param

This makes the first OID param of the ODB callback a const pointer
and also propogates that change all the way to the backends.
parent f984d97b
......@@ -23,11 +23,6 @@
GIT_BEGIN_DECL
/**
* Function type for callbacks from git_odb_foreach.
*/
typedef int (*git_odb_foreach_cb)(git_oid *id, void *payload);
/**
* Create a new object database with no backends.
*
* Before the ODB can be used for read/writing, a custom database
......
......@@ -24,7 +24,14 @@ GIT_BEGIN_DECL
struct git_odb_stream;
struct git_odb_writepack;
/** An instance for a custom backend */
/**
* Function type for callbacks from git_odb_foreach.
*/
typedef int (*git_odb_foreach_cb)(const git_oid *id, void *payload);
/**
* An instance for a custom backend
*/
struct git_odb_backend {
git_odb *odb;
......@@ -79,7 +86,7 @@ struct git_odb_backend {
int (* foreach)(
struct git_odb_backend *,
int (*cb)(git_oid *oid, void *payload),
git_odb_foreach_cb cb,
void *payload);
int (* writepack)(
......
......@@ -678,7 +678,7 @@ static int loose_backend__exists(git_odb_backend *backend, const git_oid *oid)
struct foreach_state {
size_t dir_len;
int (*cb)(git_oid *oid, void *data);
git_odb_foreach_cb cb;
void *data;
int cb_error;
};
......@@ -734,7 +734,7 @@ static int foreach_cb(void *_state, git_buf *path)
return git_path_direach(path, foreach_object_dir_cb, state);
}
static int loose_backend__foreach(git_odb_backend *_backend, int (*cb)(git_oid *oid, void *data), void *data)
static int loose_backend__foreach(git_odb_backend *_backend, git_odb_foreach_cb cb, void *data)
{
char *objects_dir;
int error;
......
......@@ -458,7 +458,7 @@ static int pack_backend__exists(git_odb_backend *backend, const git_oid *oid)
return pack_entry_find(&e, (struct pack_backend *)backend, oid) == 0;
}
static int pack_backend__foreach(git_odb_backend *_backend, int (*cb)(git_oid *oid, void *data), void *data)
static int pack_backend__foreach(git_odb_backend *_backend, git_odb_foreach_cb cb, void *data)
{
int error;
struct git_pack_file *p;
......
......@@ -698,7 +698,7 @@ static int git__memcmp4(const void *a, const void *b) {
int git_pack_foreach_entry(
struct git_pack_file *p,
int (*cb)(git_oid *oid, void *data),
git_odb_foreach_cb cb,
void *data)
{
const unsigned char *index = p->index_map.data, *current;
......
......@@ -105,7 +105,7 @@ int git_pack_entry_find(
size_t len);
int git_pack_foreach_entry(
struct git_pack_file *p,
int (*cb)(git_oid *oid, void *data),
git_odb_foreach_cb cb,
void *data);
#endif
......@@ -16,7 +16,7 @@ void test_odb_foreach__cleanup(void)
_repo = NULL;
}
static int foreach_cb(git_oid *oid, void *data)
static int foreach_cb(const git_oid *oid, void *data)
{
GIT_UNUSED(data);
GIT_UNUSED(oid);
......@@ -59,7 +59,7 @@ void test_odb_foreach__one_pack(void)
cl_assert(nobj == 1628);
}
static int foreach_stop_cb(git_oid *oid, void *data)
static int foreach_stop_cb(const git_oid *oid, void *data)
{
GIT_UNUSED(data);
GIT_UNUSED(oid);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment