@@ -231,9 +231,10 @@ static int write_directory(struct archiver_context *c)
static int queue_or_write_archive_entry(const struct object_id *oid,
struct strbuf *base, const char *filename,
- unsigned mode, int stage, void *context)
+ unsigned mode, void *context)
{
struct archiver_context *c = context;
+ int stage = 0;
while (c->bottom &&
!(base->len >= c->bottom->len &&
@@ -317,7 +318,7 @@ int write_archive_entries(struct archiver_args *args,
}
err = read_tree_recursive(args->repo, args->tree,
- 0, &args->pathspec,
+ &args->pathspec,
queue_or_write_archive_entry,
&context);
if (err == READ_TREE_RECURSIVE)
@@ -378,7 +379,7 @@ struct path_exists_context {
static int reject_entry(const struct object_id *oid, struct strbuf *base,
const char *filename, unsigned mode,
- int stage, void *context)
+ void *context)
{
int ret = -1;
struct path_exists_context *ctx = context;
@@ -406,7 +407,7 @@ static int path_exists(struct archiver_args *args, const char *path)
parse_pathspec(&ctx.pathspec, 0, 0, "", paths);
ctx.pathspec.recursive = 1;
ret = read_tree_recursive(args->repo, args->tree,
- 0, &ctx.pathspec,
+ &ctx.pathspec,
reject_entry, &ctx);
clear_pathspec(&ctx.pathspec);
return ret != 0;
@@ -114,7 +114,7 @@ static int post_checkout_hook(struct commit *old_commit, struct commit *new_comm
}
static int update_some(const struct object_id *oid, struct strbuf *base,
- const char *pathname, unsigned mode, int stage, void *context)
+ const char *pathname, unsigned mode, void *context)
{
int len;
struct cache_entry *ce;
@@ -155,7 +155,7 @@ static int update_some(const struct object_id *oid, struct strbuf *base,
static int read_tree_some(struct tree *tree, const struct pathspec *pathspec)
{
- read_tree_recursive(the_repository, tree, 0,
+ read_tree_recursive(the_repository, tree,
pathspec, update_some, NULL);
/* update the index with the given tree's info
@@ -599,7 +599,7 @@ static int show_tag_object(const struct object_id *oid, struct rev_info *rev)
static int show_tree_object(const struct object_id *oid,
struct strbuf *base,
- const char *pathname, unsigned mode, int stage, void *context)
+ const char *pathname, unsigned mode, void *context)
{
FILE *file = context;
fprintf(file, "%s%s\n", pathname, S_ISDIR(mode) ? "/" : "");
@@ -682,7 +682,7 @@ int cmd_show(int argc, const char **argv, const char *prefix)
name,
diff_get_color_opt(&rev.diffopt, DIFF_RESET));
read_tree_recursive(the_repository, (struct tree *)o,
- 0, &match_all, show_tree_object,
+ &match_all, show_tree_object,
rev.diffopt.file);
rev.shown_one = 1;
break;
@@ -424,7 +424,7 @@ static int read_one_entry_quick(const struct object_id *oid,
struct strbuf *base,
const char *pathname,
unsigned mode,
- int stage, void *context)
+ void *context)
{
struct index_state *istate = context;
int len;
@@ -437,7 +437,7 @@ static int read_one_entry_quick(const struct object_id *oid,
ce = make_empty_cache_entry(istate, base->len + len);
ce->ce_mode = create_ce_mode(mode);
- ce->ce_flags = create_ce_flags(stage);
+ ce->ce_flags = create_ce_flags(1);
ce->ce_namelen = base->len + len;
memcpy(ce->name, base->buf, base->len);
memcpy(ce->name + base->len, pathname, len+1);
@@ -483,7 +483,7 @@ void overlay_tree_on_index(struct index_state *istate,
PATHSPEC_PREFER_CWD, prefix, matchbuf);
} else
memset(&pathspec, 0, sizeof(pathspec));
- if (read_tree_recursive(the_repository, tree, 1,
+ if (read_tree_recursive(the_repository, tree,
&pathspec, read_one_entry_quick, istate))
die("unable to read tree entries %s", tree_name);
@@ -62,7 +62,7 @@ static int show_recursive(const char *base, int baselen, const char *pathname)
}
static int show_tree(const struct object_id *oid, struct strbuf *base,
- const char *pathname, unsigned mode, int stage, void *context)
+ const char *pathname, unsigned mode, void *context)
{
int retval = 0;
int baselen;
@@ -185,6 +185,6 @@ int cmd_ls_tree(int argc, const char **argv, const char *prefix)
tree = parse_tree_indirect(&oid);
if (!tree)
die("not a tree object");
- return !!read_tree_recursive(the_repository, tree, 0,
+ return !!read_tree_recursive(the_repository, tree,
&pathspec, show_tree, NULL);
}
@@ -453,7 +453,7 @@ static void unpack_trees_finish(struct merge_options *opt)
static int save_files_dirs(const struct object_id *oid,
struct strbuf *base, const char *path,
- unsigned int mode, int stage, void *context)
+ unsigned int mode, void *context)
{
struct path_hashmap_entry *entry;
int baselen = base->len;
@@ -473,7 +473,7 @@ static void get_files_dirs(struct merge_options *opt, struct tree *tree)
{
struct pathspec match_all;
memset(&match_all, 0, sizeof(match_all));
- read_tree_recursive(opt->repo, tree, 0,
+ read_tree_recursive(opt->repo, tree,
&match_all, save_files_dirs, opt);
}
@@ -12,7 +12,7 @@ const char *tree_type = "tree";
static int read_tree_1(struct repository *r,
struct tree *tree, struct strbuf *base,
- int stage, const struct pathspec *pathspec,
+ const struct pathspec *pathspec,
read_tree_fn_t fn, void *context)
{
struct tree_desc desc;
@@ -37,7 +37,7 @@ static int read_tree_1(struct repository *r,
}
switch (fn(&entry.oid, base,
- entry.path, entry.mode, stage, context)) {
+ entry.path, entry.mode, context)) {
case 0:
continue;
case READ_TREE_RECURSIVE:
@@ -71,7 +71,7 @@ static int read_tree_1(struct repository *r,
strbuf_add(base, entry.path, len);
strbuf_addch(base, '/');
retval = read_tree_1(r, lookup_tree(r, &oid),
- base, stage, pathspec,
+ base, pathspec,
fn, context);
strbuf_setlen(base, oldlen);
if (retval)
@@ -82,13 +82,13 @@ static int read_tree_1(struct repository *r,
int read_tree_recursive(struct repository *r,
struct tree *tree,
- int stage, const struct pathspec *pathspec,
+ const struct pathspec *pathspec,
read_tree_fn_t fn, void *context)
{
struct strbuf sb = STRBUF_INIT;
int ret;
- ret = read_tree_1(r, tree, &sb, stage, pathspec, fn, context);
+ ret = read_tree_1(r, tree, &sb, pathspec, fn, context);
strbuf_release(&sb);
return ret;
}
@@ -29,11 +29,11 @@ void free_tree_buffer(struct tree *tree);
struct tree *parse_tree_indirect(const struct object_id *oid);
#define READ_TREE_RECURSIVE 1
-typedef int (*read_tree_fn_t)(const struct object_id *, struct strbuf *, const char *, unsigned int, int, void *);
+typedef int (*read_tree_fn_t)(const struct object_id *, struct strbuf *, const char *, unsigned int, void *);
int read_tree_recursive(struct repository *r,
struct tree *tree,
- int stage, const struct pathspec *pathspec,
+ const struct pathspec *pathspec,
read_tree_fn_t fn, void *context);
#endif /* TREE_H */
The read_tree_recursive() function took a "stage" parameter that is passed through as-is. As it turns out nothing used this parameter in a way that they couldn't just move to the callback function they defined, so let's get rid of it. If anyone needs to pass such information in the future they can use the "void *context" parameter. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> --- archive.c | 9 +++++---- builtin/checkout.c | 4 ++-- builtin/log.c | 4 ++-- builtin/ls-files.c | 6 +++--- builtin/ls-tree.c | 4 ++-- merge-recursive.c | 4 ++-- tree.c | 10 +++++----- tree.h | 4 ++-- 8 files changed, 23 insertions(+), 22 deletions(-)