diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2007-03-21 10:08:25 -0700 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-03-21 10:21:57 -0700 |
commit | 6fda5e5180c2e7c130978361aea53b4e66f36823 (patch) | |
tree | 89df3a31883fe84ae06d1c05f29fa823614eef87 /builtin-grep.c | |
parent | a8c40471ab0851bf9a58f7dc76f121258e0690e2 (diff) | |
download | git-6fda5e5180c2e7c130978361aea53b4e66f36823.tar.gz |
Initialize tree descriptors with a helper function rather than by hand.
This removes slightly more lines than it adds, but the real reason for
doing this is that future optimizations will require more setup of the
tree descriptor, and so we want to do it in one place.
Also renamed the "desc.buf" field to "desc.buffer" just to trigger
compiler errors for old-style manual initializations, making sure I
didn't miss anything.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'builtin-grep.c')
-rw-r--r-- | builtin-grep.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/builtin-grep.c b/builtin-grep.c index 1348cc92ef..981f3d4d8e 100644 --- a/builtin-grep.c +++ b/builtin-grep.c @@ -388,11 +388,13 @@ static int grep_tree(struct grep_opt *opt, const char **paths, enum object_type type; struct tree_desc sub; void *data; - data = read_sha1_file(entry.sha1, &type, &sub.size); + unsigned long size; + + data = read_sha1_file(entry.sha1, &type, &size); if (!data) die("unable to read tree (%s)", sha1_to_hex(entry.sha1)); - sub.buf = data; + init_tree_desc(&sub, data, size); hit |= grep_tree(opt, paths, &sub, tree_name, down); free(data); } @@ -408,12 +410,13 @@ static int grep_object(struct grep_opt *opt, const char **paths, if (obj->type == OBJ_COMMIT || obj->type == OBJ_TREE) { struct tree_desc tree; void *data; + unsigned long size; int hit; data = read_object_with_reference(obj->sha1, tree_type, - &tree.size, NULL); + &size, NULL); if (!data) die("unable to read tree (%s)", sha1_to_hex(obj->sha1)); - tree.buf = data; + init_tree_desc(&tree, data, size); hit = grep_tree(opt, paths, &tree, name, ""); free(data); return hit; |