]> git.ipfire.org Git - thirdparty/git.git/commitdiff
sha1_file: convert force_object_loose to object_id
authorPatryk Obara <patryk.obara@gmail.com>
Sun, 28 Jan 2018 00:13:20 +0000 (01:13 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 30 Jan 2018 18:42:36 +0000 (10:42 -0800)
Convert the definition and declaration of force_object_loose to
struct object_id and adjust usage of this function.

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/pack-objects.c
cache.h
sha1_file.c

index 6b9cfc289d87b543b747c4024504703a2e0d6641..f38197543d80ad70ee9b0e8822a757c066e3dada 100644 (file)
@@ -2768,7 +2768,7 @@ static void loosen_unused_packed_objects(struct rev_info *revs)
                        if (!packlist_find(&to_pack, oid.hash, NULL) &&
                            !has_sha1_pack_kept_or_nonlocal(&oid) &&
                            !loosened_object_can_be_discarded(&oid, p->mtime))
-                               if (force_object_loose(oid.hash, p->mtime))
+                               if (force_object_loose(&oid, p->mtime))
                                        die("unable to force loose object");
                }
        }
diff --git a/cache.h b/cache.h
index d80141eb6498e4c822ee1da69bc07292f2a7e747..0a8be9c87f04f3b7147d06472637a2beb8a9a86c 100644 (file)
--- a/cache.h
+++ b/cache.h
@@ -1248,7 +1248,8 @@ extern int hash_sha1_file_literally(const void *buf, unsigned long len, const ch
 extern int pretend_object_file(void *, unsigned long, enum object_type,
                               struct object_id *oid);
 
-extern int force_object_loose(const unsigned char *sha1, time_t mtime);
+extern int force_object_loose(const struct object_id *oid, time_t mtime);
+
 extern int git_open_cloexec(const char *name, int flags);
 #define git_open(name) git_open_cloexec(name, O_RDONLY)
 extern void *map_sha1_file(const unsigned char *sha1, unsigned long *size);
index d1569b1b961c11c170b17e9011f9bb8db334a031..d9ee966d7423f2774dbcf66b92450801a28ec71b 100644 (file)
@@ -1670,7 +1670,7 @@ cleanup:
        return status;
 }
 
-int force_object_loose(const unsigned char *sha1, time_t mtime)
+int force_object_loose(const struct object_id *oid, time_t mtime)
 {
        void *buf;
        unsigned long len;
@@ -1679,13 +1679,13 @@ int force_object_loose(const unsigned char *sha1, time_t mtime)
        int hdrlen;
        int ret;
 
-       if (has_loose_object(sha1))
+       if (has_loose_object(oid->hash))
                return 0;
-       buf = read_object(sha1, &type, &len);
+       buf = read_object(oid->hash, &type, &len);
        if (!buf)
-               return error("cannot read sha1_file for %s", sha1_to_hex(sha1));
+               return error("cannot read sha1_file for %s", oid_to_hex(oid));
        hdrlen = xsnprintf(hdr, sizeof(hdr), "%s %lu", typename(type), len) + 1;
-       ret = write_loose_object(sha1, hdr, hdrlen, buf, len, mtime);
+       ret = write_loose_object(oid->hash, hdr, hdrlen, buf, len, mtime);
        free(buf);
 
        return ret;