summaryrefslogtreecommitdiff
path: root/list-objects.c
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2009-04-12 17:55:18 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2009-04-12 17:56:25 -0700
commit7d5a1806e8c2d9980938a05a56939272ad2ec338 (patch)
tree6a09da6a7a0d76a3bf1fc0f2d860349c6efe1de9 /list-objects.c
parentt1301-shared-repo: fix forced modes test (diff)
parentGIT 1.6.3-rc0 (diff)
downloadtgif-7d5a1806e8c2d9980938a05a56939272ad2ec338.tar.xz
Mark t1301 permission test to depend on POSIXPERM
This prepares the topic for inclusion to master.
Diffstat (limited to 'list-objects.c')
-rw-r--r--list-objects.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/list-objects.c b/list-objects.c
index c8b8375e49..433394a107 100644
--- a/list-objects.c
+++ b/list-objects.c
@@ -23,7 +23,6 @@ static void process_blob(struct rev_info *revs,
if (obj->flags & (UNINTERESTING | SEEN))
return;
obj->flags |= SEEN;
- name = xstrdup(name);
add_object(obj, p, path, name);
}
@@ -78,7 +77,6 @@ static void process_tree(struct rev_info *revs,
if (parse_tree(tree) < 0)
die("bad tree object %s", sha1_to_hex(obj->sha1));
obj->flags |= SEEN;
- name = xstrdup(name);
add_object(obj, p, path, name);
me.up = path;
me.elem = name;
@@ -137,8 +135,9 @@ void mark_edges_uninteresting(struct commit_list *list,
}
void traverse_commit_list(struct rev_info *revs,
- void (*show_commit)(struct commit *),
- void (*show_object)(struct object_array_entry *))
+ show_commit_fn show_commit,
+ show_object_fn show_object,
+ void *data)
{
int i;
struct commit *commit;
@@ -146,7 +145,7 @@ void traverse_commit_list(struct rev_info *revs,
while ((commit = get_revision(revs)) != NULL) {
process_tree(revs, commit->tree, &objects, NULL, "");
- show_commit(commit);
+ show_commit(commit, data);
}
for (i = 0; i < revs->pending.nr; i++) {
struct object_array_entry *pending = revs->pending.objects + i;
@@ -173,7 +172,7 @@ void traverse_commit_list(struct rev_info *revs,
sha1_to_hex(obj->sha1), name);
}
for (i = 0; i < objects.nr; i++)
- show_object(&objects.objects[i]);
+ show_object(&objects.objects[i], data);
free(objects.objects);
if (revs->pending.nr) {
free(revs->pending.objects);