diff options
author | Junio C Hamano <junkio@cox.net> | 2007-02-28 11:58:27 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-02-28 11:58:27 -0800 |
commit | 597388f6a1c18a117904c307c20542d8a79a1fcd (patch) | |
tree | 035f1083845981205f2f73b5db158f1598c89d19 /index-pack.c | |
parent | fbe3d87e5fcef2e0fff41c3b0589331c889dfb59 (diff) | |
parent | 66035a6b3d629b546daef3784f5351d58f4f17b1 (diff) | |
download | git-597388f6a1c18a117904c307c20542d8a79a1fcd.tar.gz |
Merge branch 'np/types'
* np/types:
Cleanup check_valid in commit-tree.
make sure enum object_type is signed
get rid of lookup_object_type()
convert object type handling from a string to a number
formalize typename(), and add its reverse type_from_string()
sha1_file.c: don't ignore an error condition in sha1_loose_object_info()
sha1_file.c: cleanup "offset" usage
sha1_file.c: cleanup hdr usage
Diffstat (limited to 'index-pack.c')
-rw-r--r-- | index-pack.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/index-pack.c b/index-pack.c index 48874a052a..9f8f0cad20 100644 --- a/index-pack.c +++ b/index-pack.c @@ -601,30 +601,23 @@ static void fix_unresolved_deltas(int nr_unresolved) struct delta_entry *d = sorted_by_pos[i]; void *data; unsigned long size; - char type[10]; - enum object_type obj_type; + enum object_type type; int j, first, last; if (objects[d->obj_no].real_type != OBJ_REF_DELTA) continue; - data = read_sha1_file(d->base.sha1, type, &size); + data = read_sha1_file(d->base.sha1, &type, &size); if (!data) continue; - if (!strcmp(type, blob_type)) obj_type = OBJ_BLOB; - else if (!strcmp(type, tree_type)) obj_type = OBJ_TREE; - else if (!strcmp(type, commit_type)) obj_type = OBJ_COMMIT; - else if (!strcmp(type, tag_type)) obj_type = OBJ_TAG; - else die("base object %s is of type '%s'", - sha1_to_hex(d->base.sha1), type); find_delta_children(&d->base, &first, &last); for (j = first; j <= last; j++) { struct object_entry *child = objects + deltas[j].obj_no; if (child->real_type == OBJ_REF_DELTA) - resolve_delta(child, data, size, obj_type); + resolve_delta(child, data, size, type); } - append_obj_to_pack(data, size, obj_type); + append_obj_to_pack(data, size, type); free(data); if (verbose) percent = display_progress(nr_resolved_deltas, |