提交 4bdb70a4 编写于 作者: P Patryk Obara 提交者: Junio C Hamano

sha1_file: convert force_object_loose to object_id

Convert the definition and declaration of force_object_loose to
struct object_id and adjust usage of this function.
Signed-off-by: NPatryk Obara <patryk.obara@gmail.com>
Signed-off-by: NJunio C Hamano <gitster@pobox.com>
上级 a09c985e
......@@ -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");
}
}
......
......@@ -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);
......
......@@ -1670,7 +1670,7 @@ int hash_sha1_file_literally(const void *buf, unsigned long len, const char *typ
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;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册