Convert struct object to object_id
[gitweb.git] / builtin / unpack-objects.c
index 7cc086f5f2fb4c4aa9a24a6b676f1bd6626f1b69..61a3378896708694ecaef3b4e593bf266c622c16 100644 (file)
@@ -13,7 +13,7 @@
 #include "fsck.h"
 
 static int dry_run, quiet, recover, has_errors, strict;
-static const char unpack_usage[] = "git unpack-objects [-n] [-q] [-r] [--strict] < pack-file";
+static const char unpack_usage[] = "git unpack-objects [-n] [-q] [-r] [--strict]";
 
 /* We always read in 4kB chunks. */
 static unsigned char buffer[4096];
@@ -46,7 +46,7 @@ static void add_object_buffer(struct object *object, char *buffer, unsigned long
        obj->buffer = buffer;
        obj->size = size;
        if (add_decoration(&obj_decorate, object, obj))
-               die("object %s tried to add buffer twice!", sha1_to_hex(object->sha1));
+               die("object %s tried to add buffer twice!", oid_to_hex(&object->oid));
 }
 
 /*
@@ -170,7 +170,7 @@ static void write_cached_object(struct object *obj, struct obj_buffer *obj_buf)
        unsigned char sha1[20];
 
        if (write_sha1_file(obj_buf->buffer, obj_buf->size, typename(obj->type), sha1) < 0)
-               die("failed to write object %s", sha1_to_hex(obj->sha1));
+               die("failed to write object %s", oid_to_hex(&obj->oid));
        obj->flags |= FLAG_WRITTEN;
 }
 
@@ -194,7 +194,7 @@ static int check_object(struct object *obj, int type, void *data, struct fsck_op
 
        if (!(obj->flags & FLAG_OPEN)) {
                unsigned long size;
-               int type = sha1_object_info(obj->sha1, &size);
+               int type = sha1_object_info(get_object_hash(*obj), &size);
                if (type != obj->type || type <= 0)
                        die("object of unexpected type");
                obj->flags |= FLAG_WRITTEN;
@@ -203,12 +203,12 @@ static int check_object(struct object *obj, int type, void *data, struct fsck_op
 
        obj_buf = lookup_object_buffer(obj);
        if (!obj_buf)
-               die("Whoops! Cannot find object '%s'", sha1_to_hex(obj->sha1));
+               die("Whoops! Cannot find object '%s'", oid_to_hex(&obj->oid));
        if (fsck_object(obj, obj_buf->buffer, obj_buf->size, &fsck_options))
                die("Error in object");
        fsck_options.walk = check_object;
        if (fsck_walk(obj, NULL, &fsck_options))
-               die("Error on reachable objects of %s", sha1_to_hex(obj->sha1));
+               die("Error on reachable objects of %s", oid_to_hex(&obj->oid));
        write_cached_object(obj, obj_buf);
        return 0;
 }