diff options
author | Junio C Hamano <junkio@cox.net> | 2006-03-29 22:55:43 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-03-29 23:54:13 -0800 |
commit | 1b0c7174a17de801051402ed35ac085ebd91e88c (patch) | |
tree | 31a806fd8bf26fe1ecf42f62c82bb68f16fbc150 /tree-diff.c | |
parent | e464f4c3119b04712ab87329f3dd4d4f21b0a8a7 (diff) | |
download | git-1b0c7174a17de801051402ed35ac085ebd91e88c.tar.gz |
tree/diff header cleanup.
Introduce tree-walk.[ch] and move "struct tree_desc" and
associated functions from various places.
Rename DIFF_FILE_CANON_MODE(mode) macro to canon_mode(mode) and
move it to cache.h. This macro returns the canonicalized
st_mode value in the host byte order for files, symlinks and
directories -- to be compared with a tree_desc entry.
create_ce_mode(mode) in cache.h is similar but is intended to be
used for index entries (so it does not work for directories) and
returns the value in the network byte order.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'tree-diff.c')
-rw-r--r-- | tree-diff.c | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/tree-diff.c b/tree-diff.c index d978428910..7bb6109111 100644 --- a/tree-diff.c +++ b/tree-diff.c @@ -9,34 +9,6 @@ static int nr_paths = 0; static const char **paths = NULL; static int *pathlens = NULL; -void update_tree_entry(struct tree_desc *desc) -{ - void *buf = desc->buf; - unsigned long size = desc->size; - int len = strlen(buf) + 1 + 20; - - if (size < len) - die("corrupt tree file"); - desc->buf = buf + len; - desc->size = size - len; -} - -const unsigned char *tree_entry_extract(struct tree_desc *desc, const char **pathp, unsigned int *modep) -{ - void *tree = desc->buf; - unsigned long size = desc->size; - int len = strlen(tree)+1; - const unsigned char *sha1 = tree + len; - const char *path = strchr(tree, ' '); - unsigned int mode; - - if (!path || size < len + 20 || sscanf(tree, "%o", &mode) != 1) - die("corrupt tree file"); - *pathp = path+1; - *modep = DIFF_FILE_CANON_MODE(mode); - return sha1; -} - static char *malloc_base(const char *base, const char *path, int pathlen) { int baselen = strlen(base); |