diff options
author | brian m. carlson <sandals@crustytoothpaste.net> | 2016-04-17 23:10:40 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-04-25 14:26:28 -0700 |
commit | ce6663a9da77c0adc0743e801946dc1a49f4a186 (patch) | |
tree | bd0fb10fb8133678b53079732fb54e266dea63b2 | |
parent | 7d924c9139e33e7599d7aed0446e634c427a5f15 (diff) | |
download | git-ce6663a9da77c0adc0743e801946dc1a49f4a186.tar.gz |
tree-walk: convert tree_entry_extract() to use struct object_id
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | fsck.c | 6 | ||||
-rw-r--r-- | match-trees.c | 12 | ||||
-rw-r--r-- | tree-diff.c | 2 | ||||
-rw-r--r-- | tree-walk.c | 10 | ||||
-rw-r--r-- | tree-walk.h | 4 |
5 files changed, 17 insertions, 17 deletions
@@ -450,11 +450,11 @@ static int fsck_tree(struct tree *item, struct fsck_options *options) while (desc.size) { unsigned mode; const char *name; - const unsigned char *sha1; + const struct object_id *oid; - sha1 = tree_entry_extract(&desc, &name, &mode); + oid = tree_entry_extract(&desc, &name, &mode); - has_null_sha1 |= is_null_sha1(sha1); + has_null_sha1 |= is_null_oid(oid); has_full_path |= !!strchr(name, '/'); has_empty_name |= !*name; has_dot |= !strcmp(name, "."); diff --git a/match-trees.c b/match-trees.c index 751f8f2011..8ca7c68f5f 100644 --- a/match-trees.c +++ b/match-trees.c @@ -131,14 +131,14 @@ static void match_trees(const unsigned char *hash1, while (one.size) { const char *path; - const unsigned char *elem; + const struct object_id *elem; unsigned mode; int score; elem = tree_entry_extract(&one, &path, &mode); if (!S_ISDIR(mode)) goto next; - score = score_trees(elem, hash2); + score = score_trees(elem->hash, hash2); if (*best_score < score) { free(*best_match); *best_match = xstrfmt("%s%s", base, path); @@ -146,7 +146,7 @@ static void match_trees(const unsigned char *hash1, } if (recurse_limit) { char *newbase = xstrfmt("%s%s/", base, path); - match_trees(elem, hash2, best_score, best_match, + match_trees(elem->hash, hash2, best_score, best_match, newbase, recurse_limit - 1); free(newbase); } @@ -191,15 +191,15 @@ static int splice_tree(const unsigned char *hash1, while (desc.size) { const char *name; unsigned mode; - const unsigned char *sha1; + const struct object_id *oid; - sha1 = tree_entry_extract(&desc, &name, &mode); + oid = tree_entry_extract(&desc, &name, &mode); if (strlen(name) == toplen && !memcmp(name, prefix, toplen)) { if (!S_ISDIR(mode)) die("entry %s in tree %s is not a tree", name, sha1_to_hex(hash1)); - rewrite_here = (unsigned char *) sha1; + rewrite_here = (unsigned char *) oid->hash; break; } update_tree_entry(&desc); diff --git a/tree-diff.c b/tree-diff.c index 402f9ff23a..ff4e0d3cb6 100644 --- a/tree-diff.c +++ b/tree-diff.c @@ -183,7 +183,7 @@ static struct combine_diff_path *emit_path(struct combine_diff_path *p, if (t) { /* path present in resulting tree */ - sha1 = tree_entry_extract(t, &path, &mode); + sha1 = tree_entry_extract(t, &path, &mode)->hash; pathlen = tree_entry_len(&t->entry); isdir = S_ISDIR(mode); } else { diff --git a/tree-walk.c b/tree-walk.c index fab57dd524..ce27842439 100644 --- a/tree-walk.c +++ b/tree-walk.c @@ -433,10 +433,10 @@ static int find_tree_entry(struct tree_desc *t, const char *name, unsigned char int namelen = strlen(name); while (t->size) { const char *entry; - const unsigned char *sha1; + const struct object_id *oid; int entrylen, cmp; - sha1 = tree_entry_extract(t, &entry, mode); + oid = tree_entry_extract(t, &entry, mode); entrylen = tree_entry_len(&t->entry); update_tree_entry(t); if (entrylen > namelen) @@ -447,7 +447,7 @@ static int find_tree_entry(struct tree_desc *t, const char *name, unsigned char if (cmp < 0) break; if (entrylen == namelen) { - hashcpy(result, sha1); + hashcpy(result, oid->hash); return 0; } if (name[entrylen] != '/') @@ -455,10 +455,10 @@ static int find_tree_entry(struct tree_desc *t, const char *name, unsigned char if (!S_ISDIR(*mode)) break; if (++entrylen == namelen) { - hashcpy(result, sha1); + hashcpy(result, oid->hash); return 0; } - return get_tree_entry(sha1, name + entrylen, result, mode); + return get_tree_entry(oid->hash, name + entrylen, result, mode); } return -1; } diff --git a/tree-walk.h b/tree-walk.h index 58f31f5596..97a7d6957e 100644 --- a/tree-walk.h +++ b/tree-walk.h @@ -13,11 +13,11 @@ struct tree_desc { unsigned int size; }; -static inline const unsigned char *tree_entry_extract(struct tree_desc *desc, const char **pathp, unsigned int *modep) +static inline const struct object_id *tree_entry_extract(struct tree_desc *desc, const char **pathp, unsigned int *modep) { *pathp = desc->entry.path; *modep = desc->entry.mode; - return desc->entry.oid->hash; + return desc->entry.oid; } static inline int tree_entry_len(const struct name_entry *ne) |