From c4584ae3fd7cd595a638a07dfd853e9d2745e930 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 27 Jun 2005 03:33:33 -0700 Subject: [PATCH] Remove "delta" object representation. Packed delta files created by git-pack-objects seems to be the way to go, and existing "delta" object handling code has exposed the object representation details to too many places. Remove it while we refactor code to come up with a proper interface in sha1_file.c. Signed-off-by: Junio C Hamano Signed-off-by: Linus Torvalds --- object.c | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) (limited to 'object.c') diff --git a/object.c b/object.c index 21f872ee16..c410e97c8f 100644 --- a/object.c +++ b/object.c @@ -4,7 +4,6 @@ #include "commit.h" #include "cache.h" #include "tag.h" -#include "delta.h" struct object **objs; int nr_objs; @@ -116,25 +115,14 @@ struct object *lookup_object_type(const unsigned char *sha1, const char *type) struct object *parse_object(const unsigned char *sha1) { - unsigned long mapsize; - void *map = map_sha1_file(sha1, &mapsize); - if (map) { - int is_delta; + unsigned long size; + char type[20]; + void *buffer = read_sha1_file(sha1, type, &size); + if (buffer) { struct object *obj; - char type[100]; - unsigned long size; - void *buffer = unpack_sha1_file(map, mapsize, type, &size); - munmap(map, mapsize); - if (!buffer) - return NULL; - is_delta = !strcmp(type, "delta"); - if (!is_delta && check_sha1_signature(sha1, buffer, size, type) < 0) + if (check_sha1_signature(sha1, buffer, size, type) < 0) printf("sha1 mismatch %s\n", sha1_to_hex(sha1)); - if (is_delta) { - struct delta *delta = lookup_delta(sha1); - parse_delta_buffer(delta, buffer, size); - obj = (struct object *) delta; - } else if (!strcmp(type, "blob")) { + if (!strcmp(type, "blob")) { struct blob *blob = lookup_blob(sha1); parse_blob_buffer(blob, buffer, size); obj = &blob->object; -- cgit v1.2.1