Convert read_sha1_file to take a pointer to struct object_id and rename
it read_object_file. Do the same for read_sha1_file_extended.
Convert one use in grep.c to use the new function without any other code
change, since the pointer being passed is a void pointer that is already
initialized with a pointer to struct object_id. Update the declaration
and definitions of the modified functions, and apply the following
semantic patch to convert the remaining callers:
@@
expression E1, E2, E3;
@@
- read_sha1_file(E1.hash, E2, E3)
+ read_object_file(&E1, E2, E3)
@@
expression E1, E2, E3;
@@
- read_sha1_file(E1->hash, E2, E3)
+ read_object_file(E1, E2, E3)
@@
expression E1, E2, E3, E4;
@@
- read_sha1_file_extended(E1.hash, E2, E3, E4)
+ read_object_file_extended(&E1, E2, E3, E4)
@@
expression E1, E2, E3, E4;
@@
- read_sha1_file_extended(E1->hash, E2, E3, E4)
+ read_object_file_extended(E1, E2, E3, E4)
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
51 files changed:
raw | patch | inline | side by side (parent: 02f0547 )
unsigned long size;
char *result;
unsigned long size;
char *result;
- result = read_sha1_file(oid.hash , &type, &size);
+ result = read_object_file(&oid , &type, &size);
if (!result)
return error(_("the necessary postimage %s for "
"'%s' cannot be read"),
if (!result)
return error(_("the necessary postimage %s for "
"'%s' cannot be read"),
unsigned long sz;
char *result;
unsigned long sz;
char *result;
- result = read_sha1_file(oid->hash , &type, &sz);
+ result = read_object_file(oid , &type, &sz);
if (!result)
return -1;
/* XXX read_sha1_file NUL-terminates */
if (!result)
return -1;
/* XXX read_sha1_file NUL-terminates */
const struct commit *commit = args->convert ? args->commit : NULL;
path += args->baselen;
const struct commit *commit = args->convert ? args->commit : NULL;
path += args->baselen;
- buffer = read_sha1_file(oid->hash , type, sizep);
+ buffer = read_object_file(oid , type, sizep);
if (buffer && S_ISREG(mode)) {
struct strbuf buf = STRBUF_INIT;
size_t size = 0;
if (buffer && S_ISREG(mode)) {
struct strbuf buf = STRBUF_INIT;
size_t size = 0;
unsigned flags = commit->object.flags;
enum object_type type;
unsigned long size;
unsigned flags = commit->object.flags;
enum object_type type;
unsigned long size;
- char *buf = read_sha1_file(commit->object.oid.hash, &type, &size);
+ char *buf = read_object_file(&commit->object.oid, &type,
+ &size);
const char *subject_start;
int subject_len;
const char *subject_start;
int subject_len;
textconv_object(o->path, o->mode, &o->blob_oid, 1, &file->ptr, &file_size))
;
else
textconv_object(o->path, o->mode, &o->blob_oid, 1, &file->ptr, &file_size))
;
else
- file->ptr = read_sha1_file(o->blob_oid.hash , &type,
- &file_size);
+ file->ptr = read_object_file(&o->blob_oid , &type,
+ &file_size);
file->size = file_size;
if (!file->ptr)
file->size = file_size;
if (!file->ptr)
&sb->final_buf_size))
;
else
&sb->final_buf_size))
;
else
- sb->final_buf = read_sha1_file(o->blob_oid.hash , &type,
- &sb->final_buf_size);
+ sb->final_buf = read_object_file(&o->blob_oid , &type,
+ &sb->final_buf_size);
if (!sb->final_buf)
die(_("cannot read blob %s for path %s"),
if (!sb->final_buf)
die(_("cannot read blob %s for path %s"),
- *buf = read_sha1_file(oid->hash , &type, size);
+ *buf = read_object_file(oid , &type, size);
if (!*buf)
return error(_("cannot read object %s '%s'"),
oid_to_hex(oid), path);
if (!*buf)
return error(_("cannot read object %s '%s'"),
oid_to_hex(oid), path);
if (type == OBJ_BLOB)
return stream_blob_to_fd(1, &oid, NULL, 0);
if (type == OBJ_BLOB)
return stream_blob_to_fd(1, &oid, NULL, 0);
- buf = read_sha1_file(oid.hash , &type, &size);
+ buf = read_object_file(&oid , &type, &size);
if (!buf)
die("Cannot read object %s", obj_name);
if (!buf)
die("Cannot read object %s", obj_name);
if (type_from_string(exp_type) == OBJ_BLOB) {
struct object_id blob_oid;
if (oid_object_info(&oid, NULL) == OBJ_TAG) {
if (type_from_string(exp_type) == OBJ_BLOB) {
struct object_id blob_oid;
if (oid_object_info(&oid, NULL) == OBJ_TAG) {
- char *buffer = read_sha1_file(oid.hash, &type, &size);
+ char *buffer = read_object_file(&oid, &type,
+ &size);
const char *target;
if (!skip_prefix(buffer, "object ", &target) ||
get_oid_hex(target, &blob_oid))
const char *target;
if (!skip_prefix(buffer, "object ", &target) ||
get_oid_hex(target, &blob_oid))
enum object_type type;
if (!textconv_object(data->rest, 0100644, oid,
1, &contents, &size))
enum object_type type;
if (!textconv_object(data->rest, 0100644, oid,
1, &contents, &size))
- contents = read_sha1_file(oid->hash, &type,
- &size);
+ contents = read_object_file(oid,
+ &type,
+ &size);
if (!contents)
die("could not convert '%s' %s",
oid_to_hex(oid), data->rest);
if (!contents)
die("could not convert '%s' %s",
oid_to_hex(oid), data->rest);
unsigned long size;
void *contents;
unsigned long size;
void *contents;
- contents = read_sha1_file(oid->hash , &type, &size);
+ contents = read_object_file(oid , &type, &size);
if (!contents)
die("object %s disappeared", oid_to_hex(oid));
if (type != data->type)
if (!contents)
die("object %s disappeared", oid_to_hex(oid));
if (type != data->type)
} else {
enum object_type type;
unsigned long size;
} else {
enum object_type type;
unsigned long size;
- data = read_sha1_file(oid->hash , &type, &size);
+ data = read_object_file(oid , &type, &size);
if (!data)
die(_("could not read object %s for symlink %s"),
oid_to_hex(oid), path);
if (!data)
die(_("could not read object %s for symlink %s"),
oid_to_hex(oid), path);
object = (struct object *)lookup_blob(oid);
eaten = 0;
} else {
object = (struct object *)lookup_blob(oid);
eaten = 0;
} else {
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf)
die ("Could not read blob %s", oid_to_hex(oid));
if (check_object_signature(oid, buf, size, type_name(type)) < 0)
if (!buf)
die ("Could not read blob %s", oid_to_hex(oid));
if (check_object_signature(oid, buf, size, type_name(type)) < 0)
- buf = read_sha1_file(tag->object.oid.hash , &type, &size);
+ buf = read_object_file(&tag->object.oid , &type, &size);
if (!buf)
die ("Could not read tag %s", oid_to_hex(&tag->object.oid));
message = memmem(buf, size, "\n\n", 2);
if (!buf)
die ("Could not read tag %s", oid_to_hex(&tag->object.oid));
message = memmem(buf, size, "\n\n", 2);
struct object_id *oid = origins.items[i].util;
enum object_type type;
unsigned long size, len;
struct object_id *oid = origins.items[i].util;
enum object_type type;
unsigned long size, len;
- char *buf = read_sha1_file(oid->hash , &type, &size);
+ char *buf = read_object_file(oid , &type, &size);
struct strbuf sig = STRBUF_INIT;
if (!buf || type != OBJ_TAG)
struct strbuf sig = STRBUF_INIT;
if (!buf || type != OBJ_TAG)
void *data;
grep_read_lock();
void *data;
grep_read_lock();
- data = read_sha1_file(oid->hash , type, size);
+ data = read_object_file(oid , type, size);
grep_read_unlock();
return data;
}
grep_read_unlock();
return data;
}
die(_("cannot read existing object info %s"), oid_to_hex(oid));
if (has_type != type || has_size != size)
die(_("SHA1 COLLISION FOUND WITH %s !"), oid_to_hex(oid));
die(_("cannot read existing object info %s"), oid_to_hex(oid));
if (has_type != type || has_size != size)
die(_("SHA1 COLLISION FOUND WITH %s !"), oid_to_hex(oid));
- has_data = read_sha1_file(oid->hash , &has_type, &has_size);
+ has_data = read_object_file(oid , &has_type, &has_size);
read_unlock();
if (!data)
data = new_data = get_data_from_pack(obj_entry);
read_unlock();
if (!data)
data = new_data = get_data_from_pack(obj_entry);
if (objects[d->obj_no].real_type != OBJ_REF_DELTA)
continue;
if (objects[d->obj_no].real_type != OBJ_REF_DELTA)
continue;
- base_obj->data = read_sha1_file(d->oid.hash, &type, &base_obj->size);
+ base_obj->data = read_object_file(&d->oid, &type,
+ &base_obj->size);
if (!base_obj->data)
continue;
if (!base_obj->data)
continue;
{
unsigned long size;
enum object_type type;
{
unsigned long size;
enum object_type type;
- char *buf = read_sha1_file(oid->hash , &type, &size);
+ char *buf = read_object_file(oid , &type, &size);
int offset = 0;
if (!buf)
int offset = 0;
if (!buf)
const char *path = entry->path;
if (!entry->stage)
const char *path = entry->path;
if (!entry->stage)
- return read_sha1_file(entry->blob->object.oid.hash , &type, size);
+ return read_object_file(&entry->blob->object.oid , &type, size);
base = NULL;
if (entry->stage == 1) {
base = entry->blob;
base = NULL;
if (entry->stage == 1) {
base = entry->blob;
enum object_type type;
while (entry) {
if (entry->stage == 2)
enum object_type type;
while (entry) {
if (entry->stage == 2)
- return read_sha1_file(entry->blob->object.oid.hash, &type, size);
+ return read_object_file(&entry->blob->object.oid,
+ &type, size);
entry = entry->link;
}
return NULL;
entry = entry->link;
}
return NULL;
int ret = -1;
enum object_type type;
unsigned long size;
int ret = -1;
enum object_type type;
unsigned long size;
- void *buffer = read_sha1_file(oid->hash , &type, &size);
+ void *buffer = read_object_file(oid , &type, &size);
const unsigned char *repl = lookup_replace_object(oid->hash);
if (buffer) {
const unsigned char *repl = lookup_replace_object(oid->hash);
if (buffer) {
{
unsigned long size;
enum object_type type;
{
unsigned long size;
enum object_type type;
- char *buf = read_sha1_file(oid->hash , &type, &size);
+ char *buf = read_object_file(oid , &type, &size);
if (buf) {
if (size)
write_or_die(fd, buf, size);
if (buf) {
if (size)
write_or_die(fd, buf, size);
if (get_oid(arg, &object))
die(_("failed to resolve '%s' as a valid ref."), arg);
if (get_oid(arg, &object))
die(_("failed to resolve '%s' as a valid ref."), arg);
- if (!(buf = read_sha1_file(object.hash , &type, &len))) {
+ if (!(buf = read_object_file(&object , &type, &len))) {
free(buf);
die(_("failed to read object '%s'."), arg);
}
free(buf);
die(_("failed to read object '%s'."), arg);
}
/* Append buf to previous note contents */
unsigned long size;
enum object_type type;
/* Append buf to previous note contents */
unsigned long size;
enum object_type type;
- char *prev_buf = read_sha1_file(note->hash , &type, &size);
+ char *prev_buf = read_object_file(note , &type, &size);
strbuf_grow(&d.buf, size + 1);
if (d.buf.len && prev_buf && size)
strbuf_grow(&d.buf, size + 1);
if (d.buf.len && prev_buf && size)
void *buf, *base_buf, *delta_buf;
enum object_type type;
void *buf, *base_buf, *delta_buf;
enum object_type type;
- buf = read_sha1_file(entry->idx.oid.hash , &type, &size);
+ buf = read_object_file(&entry->idx.oid , &type, &size);
if (!buf)
die("unable to read %s", oid_to_hex(&entry->idx.oid));
if (!buf)
die("unable to read %s", oid_to_hex(&entry->idx.oid));
- base_buf = read_sha1_file(entry->delta->idx.oid.hash, &type,
- &base_size);
+ base_buf = read_object_file(&entry->delta->idx.oid, &type, &base_size);
if (!base_buf)
die("unable to read %s",
oid_to_hex(&entry->delta->idx.oid));
if (!base_buf)
die("unable to read %s",
oid_to_hex(&entry->delta->idx.oid));
(st = open_istream(&entry->idx.oid, &type, &size, NULL)) != NULL)
buf = NULL;
else {
(st = open_istream(&entry->idx.oid, &type, &size, NULL)) != NULL)
buf = NULL;
else {
- buf = read_sha1_file(entry->idx.oid.hash, &type,
- &size);
+ buf = read_object_file(&entry->idx.oid, &type, &size);
if (!buf)
die(_("unable to read %s"),
oid_to_hex(&entry->idx.oid));
if (!buf)
die(_("unable to read %s"),
oid_to_hex(&entry->idx.oid));
/* Did not find one. Either we got a bogus request or
* we need to read and perhaps cache.
*/
/* Did not find one. Either we got a bogus request or
* we need to read and perhaps cache.
*/
- data = read_sha1_file(oid->hash , &type, &size);
+ data = read_object_file(oid , &type, &size);
if (!data)
return NULL;
if (type != OBJ_TREE) {
if (!data)
return NULL;
if (type != OBJ_TREE) {
/* Load data if not already done */
if (!trg->data) {
read_lock();
/* Load data if not already done */
if (!trg->data) {
read_lock();
- trg->data = read_sha1_file(trg_entry->idx.oid.hash, &type,
- &sz);
+ trg->data = read_object_file(&trg_entry->idx.oid, &type, &sz);
read_unlock();
if (!trg->data)
die("object %s cannot be read",
read_unlock();
if (!trg->data)
die("object %s cannot be read",
}
if (!src->data) {
read_lock();
}
if (!src->data) {
read_lock();
- src->data = read_sha1_file(src_entry->idx.oid.hash, &type,
- &sz);
+ src->data = read_object_file(&src_entry->idx.oid, &type, &sz);
read_unlock();
if (!src->data) {
if (src_entry->preferred_base) {
read_unlock();
if (!src->data) {
if (src_entry->preferred_base) {
if (!tree->buffer) {
enum object_type type;
unsigned long size;
if (!tree->buffer) {
enum object_type type;
unsigned long size;
- void *data = read_sha1_file(oid->hash , &type, &size);
+ void *data = read_object_file(oid , &type, &size);
if (!data) {
tree->object.flags |= INCOMPLETE;
return 0;
if (!data) {
tree->object.flags |= INCOMPLETE;
return 0;
enum object_type type;
char *buf, *sp;
enum object_type type;
char *buf, *sp;
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf)
return;
/* skip header */
if (!buf)
return;
/* skip header */
strbuf_addstr(sb, "object of unknown type");
break;
case OBJ_COMMIT:
strbuf_addstr(sb, "object of unknown type");
break;
case OBJ_COMMIT:
- if ((buf = read_sha1_file(oid->hash , &type, &size)) != NULL) {
+ if ((buf = read_object_file(oid , &type, &size)) != NULL) {
subject_len = find_commit_subject(buf, &subject_start);
strbuf_insert(sb, sb->len, subject_start, subject_len);
} else {
subject_len = find_commit_subject(buf, &subject_start);
strbuf_insert(sb, sb->len, subject_start, subject_len);
} else {
unsigned long size;
int fd;
unsigned long size;
int fd;
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf || type != OBJ_BLOB)
die("unable to read blob object %s", oid_to_hex(oid));
if (!buf || type != OBJ_BLOB)
die("unable to read blob object %s", oid_to_hex(oid));
if (resolve_against_held(nr, &base_oid, delta_data, delta_size))
return;
if (resolve_against_held(nr, &base_oid, delta_data, delta_size))
return;
- base = read_sha1_file(base_oid.hash , &type, &base_size);
+ base = read_object_file(&base_oid , &type, &base_size);
if (!base) {
error("failed to read delta-pack base object %s",
oid_to_hex(&base_oid));
if (!base) {
error("failed to read delta-pack base object %s",
oid_to_hex(&base_oid));
if (get_oid(name, &oid))
return error("commit '%s' not found.", name);
if (get_oid(name, &oid))
return error("commit '%s' not found.", name);
- buf = read_sha1_file(oid.hash , &type, &size);
+ buf = read_object_file(&oid , &type, &size);
if (!buf)
return error("%s: unable to read file.", name);
if (type != OBJ_COMMIT)
if (!buf)
return error("%s: unable to read file.", name);
if (type != OBJ_COMMIT)
if (revs->max_age == -1 && revs->min_age == -1)
goto out;
if (revs->max_age == -1 && revs->min_age == -1)
goto out;
- buf = read_sha1_file(tag->oid.hash , &type, &size);
+ buf = read_object_file(&tag->oid , &type, &size);
if (!buf)
goto out;
line = memmem(buf, size, "\ntagger ", 8);
if (!buf)
goto out;
line = memmem(buf, size, "\ntagger ", 8);
*/
extern char *xdg_cache_home(const char *filename);
*/
extern char *xdg_cache_home(const char *filename);
-extern void *read_sha1_file_extended(const unsigned char *sha1 ,
- enum object_type *type,
- unsigned long *size, int lookup_replace);
-static inline void *read_sha1_file(const unsigned char *sha1 , enum object_type *type, unsigned long *size)
+extern void *read_object_file_extended(const struct object_id *oid ,
+ enum object_type *type,
+ unsigned long *size, int lookup_replace);
+static inline void *read_object_file(const struct object_id *oid , enum object_type *type, unsigned long *size)
- return read_sha1_file_extended(sha1 , type, size, 1);
+ return read_object_file_extended(oid , type, size, 1);
*size = fill_textconv(textconv, df, &blob);
free_filespec(df);
} else {
*size = fill_textconv(textconv, df, &blob);
free_filespec(df);
} else {
- blob = read_sha1_file(oid->hash , &type, size);
+ blob = read_object_file(oid , &type, size);
if (type != OBJ_BLOB)
die("object '%s' is not a blob!", oid_to_hex(oid));
}
if (type != OBJ_BLOB)
die("object '%s' is not a blob!", oid_to_hex(oid));
}
if (!ret) {
enum object_type type;
unsigned long size;
if (!ret) {
enum object_type type;
unsigned long size;
- ret = read_sha1_file(commit->object.oid.hash , &type, &size);
+ ret = read_object_file(&commit->object.oid , &type, &size);
if (!ret)
die("cannot read commit object %s",
oid_to_hex(&commit->object.oid));
if (!ret)
die("cannot read commit object %s",
oid_to_hex(&commit->object.oid));
return -1;
if (item->object.parsed)
return 0;
return -1;
if (item->object.parsed)
return 0;
- buffer = read_sha1_file(item->object.oid.hash , &type, &size);
+ buffer = read_object_file(&item->object.oid , &type, &size);
if (!buffer)
return quiet_on_missing ? -1 :
error("Could not read %s",
if (!buffer)
return quiet_on_missing ? -1 :
error("Could not read %s",
desc = merge_remote_util(parent);
if (!desc || !desc->obj)
return;
desc = merge_remote_util(parent);
if (!desc || !desc->obj)
return;
- buf = read_sha1_file(desc->obj->oid.hash , &type, &size);
+ buf = read_object_file(&desc->obj->oid , &type, &size);
if (!buf || type != OBJ_TAG)
goto free_return;
len = parse_signature(buf, size);
if (!buf || type != OBJ_TAG)
goto free_return;
len = parse_signature(buf, size);
unsigned long size;
int ret;
unsigned long size;
int ret;
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf)
return error("unable to load config blob object '%s'", name);
if (type != OBJ_BLOB) {
if (!buf)
return error("unable to load config blob object '%s'", name);
if (type != OBJ_BLOB) {
- s->data = read_sha1_file(s->oid.hash , &type, &s->size);
+ s->data = read_object_file(&s->oid , &type, &s->size);
if (!s->data)
die("unable to read %s", oid_to_hex(&s->oid));
s->should_free = 1;
if (!s->data)
die("unable to read %s", oid_to_hex(&s->oid));
s->should_free = 1;
*size_out = 0;
*data_out = NULL;
*size_out = 0;
*data_out = NULL;
- data = read_sha1_file(oid->hash , &type, &sz);
+ data = read_object_file(oid , &type, &sz);
if (!data || type != OBJ_BLOB) {
free(data);
return -1;
if (!data || type != OBJ_BLOB) {
free(data);
return -1;
static void *read_blob_entry(const struct cache_entry *ce, unsigned long *size)
{
enum object_type type;
static void *read_blob_entry(const struct cache_entry *ce, unsigned long *size)
{
enum object_type type;
- void *blob_data = read_sha1_file(ce->oid.hash , &type, size);
+ void *blob_data = read_object_file(&ce->oid , &type, size);
if (blob_data) {
if (type == OBJ_BLOB)
if (blob_data) {
if (type == OBJ_BLOB)
die("Can't load tree %s", oid_to_hex(oid));
} else {
enum object_type type;
die("Can't load tree %s", oid_to_hex(oid));
} else {
enum object_type type;
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf || type != OBJ_TREE)
die("Can't load tree %s", oid_to_hex(oid));
}
if (!buf || type != OBJ_TREE)
die("Can't load tree %s", oid_to_hex(oid));
}
char *buf;
if (!oe || oe->pack_id == MAX_PACK_ID) {
char *buf;
if (!oe || oe->pack_id == MAX_PACK_ID) {
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
} else {
type = oe->type;
buf = gfi_unpack_entry(oe, &size);
} else {
type = oe->type;
buf = gfi_unpack_entry(oe, &size);
buf = gfi_unpack_entry(oe, &size);
} else {
enum object_type unused;
buf = gfi_unpack_entry(oe, &size);
} else {
enum object_type unused;
- buf = read_sha1_file(oid->hash , &unused, &size);
+ buf = read_object_file(oid , &unused, &size);
}
if (!buf)
die("Can't load object %s", oid_to_hex(oid));
}
if (!buf)
die("Can't load object %s", oid_to_hex(oid));
enum object_type type;
buffer = to_free =
enum object_type type;
buffer = to_free =
- read_sha1_file(tag->object.oid.hash , &type, &size);
+ read_object_file(&tag->object.oid , &type, &size);
if (!buffer)
return report(options, &tag->object,
FSCK_MSG_MISSING_TAG_OBJECT,
if (!buffer)
return report(options, &tag->object,
FSCK_MSG_MISSING_TAG_OBJECT,
enum object_type type;
grep_read_lock();
enum object_type type;
grep_read_lock();
- gs->buf = read_sha1 _file(gs->identifier, &type, &gs->size);
+ gs->buf = read_object _file(gs->identifier, &type, &gs->size);
grep_read_unlock();
if (!gs->buf)
grep_read_unlock();
if (!gs->buf)
ssize_t size;
git_zstream stream;
ssize_t size;
git_zstream stream;
- unpacked = read_sha1_file(request->obj->oid.hash , &type, &len);
+ unpacked = read_object_file(&request->obj->oid , &type, &len);
hdrlen = xsnprintf(hdr, sizeof(hdr), "%s %lu", type_name(type), len) + 1;
/* Set it up */
hdrlen = xsnprintf(hdr, sizeof(hdr), "%s %lu", type_name(type), len) + 1;
/* Set it up */
if (get_oid(name, &oid) < 0)
return 0;
if (get_oid(name, &oid) < 0)
return 0;
- buf = read_sha1_file(oid.hash , &type, &size);
+ buf = read_object_file(&oid , &type, &size);
if (!buf)
return error("unable to read mailmap object at %s", name);
if (type != OBJ_BLOB)
if (!buf)
return error("unable to read mailmap object at %s", name);
if (type != OBJ_BLOB)
enum object_type type;
unsigned long size;
enum object_type type;
unsigned long size;
- buffer = read_sha1_file(hash-> hash, &type, &size);
+ buffer = read_object_file( hash, &type, &size);
if (!buffer)
die("unable to read tree (%s)", oid_to_hex(hash));
if (type != OBJ_TREE)
if (!buffer)
die("unable to read tree (%s)", oid_to_hex(hash));
if (type != OBJ_TREE)
- buf = read_sha1_file(oid1->hash , &type, &sz);
+ buf = read_object_file(oid1 , &type, &sz);
if (!buf)
die("cannot read tree %s", oid_to_hex(oid1));
init_tree_desc(&desc, buf, sz);
if (!buf)
die("cannot read tree %s", oid_to_hex(oid1));
init_tree_desc(&desc, buf, sz);
unsigned long size;
enum object_type type;
unsigned long size;
enum object_type type;
- buf = read_sha1_file(obj->object.oid.hash , &type, &size);
+ buf = read_object_file(&obj->object.oid , &type, &size);
if (!buf)
return -1;
if (type != OBJ_BLOB) {
if (!buf)
return -1;
if (type != OBJ_BLOB) {
return NULL;
if (!our)
our = their;
return NULL;
if (!our)
our = their;
- return read_sha1_file(our->object.oid.hash , &type, size);
+ return read_object_file(&our->object.oid , &type, size);
}
if (fill_mmfile_blob(&f1, our) < 0)
}
if (fill_mmfile_blob(&f1, our) < 0)
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf)
return err(o, _("cannot read object %s '%s'"), oid_to_hex(oid), path);
if (type != OBJ_BLOB) {
if (!buf)
return err(o, _("cannot read object %s '%s'"), oid_to_hex(oid), path);
if (type != OBJ_BLOB) {
void *buf;
enum object_type type;
unsigned long size;
void *buf;
enum object_type type;
unsigned long size;
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf)
return err(o, _("cannot read object %s"), oid_to_hex(oid));
if (type != OBJ_BLOB) {
if (!buf)
return err(o, _("cannot read object %s"), oid_to_hex(oid));
if (type != OBJ_BLOB) {
value_oid = get_note(&c->tree, key_oid);
if (!value_oid)
return NULL;
value_oid = get_note(&c->tree, key_oid);
if (!value_oid)
return NULL;
- value = read_sha1_file(value_oid->hash , &type, &size);
+ value = read_object_file(value_oid , &type, &size);
*outsize = size;
return value;
*outsize = size;
return value;
{
enum object_type type;
unsigned long size;
{
enum object_type type;
unsigned long size;
- void *buf = read_sha1_file(note->hash , &type, &size);
+ void *buf = read_object_file(note , &type, &size);
if (!buf)
die("cannot read note %s for object %s",
if (!buf)
die("cannot read note %s for object %s",
/* read in both note blob objects */
if (!is_null_oid(new_oid))
/* read in both note blob objects */
if (!is_null_oid(new_oid))
- new_msg = read_sha1_file(new_oid->hash , &new_type, &new_len);
+ new_msg = read_object_file(new_oid , &new_type, &new_len);
if (!new_msg || !new_len || new_type != OBJ_BLOB) {
free(new_msg);
return 0;
}
if (!is_null_oid(cur_oid))
if (!new_msg || !new_len || new_type != OBJ_BLOB) {
free(new_msg);
return 0;
}
if (!is_null_oid(cur_oid))
- cur_msg = read_sha1_file(cur_oid->hash , &cur_type, &cur_len);
+ cur_msg = read_object_file(cur_oid , &cur_type, &cur_len);
if (!cur_msg || !cur_len || cur_type != OBJ_BLOB) {
free(cur_msg);
free(new_msg);
if (!cur_msg || !cur_len || cur_type != OBJ_BLOB) {
free(cur_msg);
free(new_msg);
return 0;
/* read_sha1_file NUL-terminates */
return 0;
/* read_sha1_file NUL-terminates */
- data = read_sha1_file(oid->hash , &t, &len);
+ data = read_object_file(oid , &t, &len);
if (t != OBJ_BLOB || !data || !len) {
free(data);
return t != OBJ_BLOB || !data;
if (t != OBJ_BLOB || !data || !len) {
free(data);
return t != OBJ_BLOB || !data;
- if (!(msg = read_sha1_file(oid->hash , &type, &msglen)) || type != OBJ_BLOB) {
+ if (!(msg = read_object_file(oid , &type, &msglen)) || type != OBJ_BLOB) {
return lookup_object(oid->hash);
}
return lookup_object(oid->hash);
}
- buffer = read_sha1_file(oid->hash , &type, &size);
+ buffer = read_object_file(oid , &type, &size);
if (buffer) {
struct object_id reploid;
hashcpy(reploid.hash, repl);
if (buffer) {
struct object_id reploid;
hashcpy(reploid.hash, repl);
if (strbuf_readlink(&sb, ce->name, expected_size))
return -1;
if (strbuf_readlink(&sb, ce->name, expected_size))
return -1;
- buffer = read_sha1_file(ce->oid.hash , &type, &size);
+ buffer = read_object_file(&ce->oid , &type, &size);
if (buffer) {
if (size == sb.len)
match = memcmp(buffer, sb.buf, size);
if (buffer) {
if (size == sb.len)
match = memcmp(buffer, sb.buf, size);
}
if (pos < 0)
return NULL;
}
if (pos < 0)
return NULL;
- data = read_sha1_file(istate->cache[pos]->oid.hash , &type, &sz);
+ data = read_object_file(&istate->cache[pos]->oid , &type, &sz);
if (!data || type != OBJ_BLOB) {
free(data);
return NULL;
if (!data || type != OBJ_BLOB) {
free(data);
return NULL;
static void *get_obj(const struct object_id *oid, struct object **obj, unsigned long *sz, int *eaten)
{
enum object_type type;
static void *get_obj(const struct object_id *oid, struct object **obj, unsigned long *sz, int *eaten)
{
enum object_type type;
- void *buf = read_sha1_file(oid->hash , &type, sz);
+ void *buf = read_object_file(oid , &type, sz);
if (buf)
*obj = parse_object_buffer(oid, type, *sz, buf, eaten);
if (buf)
*obj = parse_object_buffer(oid, type, *sz, buf, eaten);
init_notes(NULL, notes_ref, NULL, 0);
if (!(note_oid = get_note(NULL, oid)))
return NULL; /* note tree not found */
init_notes(NULL, notes_ref, NULL, 0);
if (!(note_oid = get_note(NULL, oid)))
return NULL; /* note tree not found */
- if (!(msg = read_sha1_file(note_oid->hash , &type, &msglen)))
+ if (!(msg = read_object_file(note_oid , &type, &msglen)))
error("Empty notes tree. %s", notes_ref);
else if (!msglen || type != OBJ_BLOB) {
error("Note contains unusable content. "
error("Empty notes tree. %s", notes_ref);
else if (!msglen || type != OBJ_BLOB) {
error("Note contains unusable content. "
enum object_type type;
struct rev_note note;
enum object_type type;
struct rev_note note;
- if (!(msg = read_sha1_file(note_oid->hash , &type, &msglen)) ||
+ if (!(msg = read_object_file(note_oid , &type, &msglen)) ||
!msglen || type != OBJ_BLOB) {
free(msg);
return 1;
!msglen || type != OBJ_BLOB) {
free(msg);
return 1;
break;
i = ce_stage(ce) - 1;
if (!mmfile[i].ptr) {
break;
i = ce_stage(ce) - 1;
if (!mmfile[i].ptr) {
- mmfile[i].ptr = read_sha1_file(ce->oid.hash , &type,
- &size);
+ mmfile[i].ptr = read_object_file(&ce->oid , &type,
+ &size);
mmfile[i].size = size;
}
}
mmfile[i].size = size;
}
}
* deal with them should arrange to call read_object() and give error
* messages themselves.
*/
* deal with them should arrange to call read_object() and give error
* messages themselves.
*/
-void *read_sha1_file_extended(const unsigned char *sha1 ,
- enum object_type *type,
- unsigned long *size,
- int lookup_replace)
+void *read_object_file_extended(const struct object_id *oid ,
+ enum object_type *type,
+ unsigned long *size,
+ int lookup_replace)
{
void *data;
const struct packed_git *p;
const char *path;
struct stat st;
{
void *data;
const struct packed_git *p;
const char *path;
struct stat st;
- const unsigned char *repl = lookup_replace ? lookup_replace_object(sha1 )
- : sha1 ;
+ const unsigned char *repl = lookup_replace ? lookup_replace_object(oid->hash )
+ : oid->hash ;
errno = 0;
data = read_object(repl, type, size);
errno = 0;
data = read_object(repl, type, size);
return data;
if (errno && errno != ENOENT)
return data;
if (errno && errno != ENOENT)
- die_errno("failed to read object %s", sha1_to_hex(sha1 ));
+ die_errno("failed to read object %s", oid_to_hex(oid ));
/* die if we replaced an object with one that does not exist */
/* die if we replaced an object with one that does not exist */
die("replacement %s not found for %s",
die("replacement %s not found for %s",
- sha1_to_hex(repl), sha1_to_hex(sha1 ));
+ sha1_to_hex(repl), oid_to_hex(oid ));
if (!stat_sha1_file(repl, &st, &path))
die("loose object %s (stored in %s) is corrupt",
if (!stat_sha1_file(repl, &st, &path))
die("loose object %s (stored in %s) is corrupt",
int ref_length = -1;
const char *ref_type = NULL;
int ref_length = -1;
const char *ref_type = NULL;
- buffer = read_sha1_file(actual_oid.hash , &type, &isize);
+ buffer = read_object_file(&actual_oid , &type, &isize);
if (!buffer)
return NULL;
if (type == required_type) {
if (!buffer)
return NULL;
if (type == required_type) {
static open_method_decl(incore)
{
static open_method_decl(incore)
{
- st->u.incore.buf = read_sha1_file_extended(oid->hash , type, &st->size, 0);
+ st->u.incore.buf = read_object_file_extended(oid , type, &st->size, 0);
st->u.incore.read_ptr = 0;
st->vtbl = &incore_vtbl;
st->u.incore.read_ptr = 0;
st->vtbl = &incore_vtbl;
- config = read_sha1_file(oid.hash , &type, &config_size);
+ config = read_object_file(&oid , &type, &config_size);
if (!config || type != OBJ_BLOB)
goto out;
if (!config || type != OBJ_BLOB)
goto out;
find_unique_abbrev(oid, DEFAULT_ABBREV),
type_name(type));
find_unique_abbrev(oid, DEFAULT_ABBREV),
type_name(type));
- buf = read_sha1_file(oid->hash , &type, &size);
+ buf = read_object_file(oid , &type, &size);
if (!buf)
return error("%s: unable to read file.",
name_to_report ?
if (!buf)
return error("%s: unable to read file.",
name_to_report ?
if (item->object.parsed)
return 0;
if (item->object.parsed)
return 0;
- data = read_sha1_file(item->object.oid.hash , &type, &size);
+ data = read_object_file(&item->object.oid , &type, &size);
if (!data)
return error("Could not read %s",
oid_to_hex(&item->object.oid));
if (!data)
return error("Could not read %s",
oid_to_hex(&item->object.oid));
*/
retval = DANGLING_SYMLINK;
*/
retval = DANGLING_SYMLINK;
- contents = read_sha1_file(current_tree_oid.hash , &type,
- &link_len);
+ contents = read_object_file(¤t_tree_oid , &type,
+ &link_len);
if (!contents)
goto done;
if (!contents)
goto done;
if (item->object.parsed)
return 0;
if (item->object.parsed)
return 0;
- buffer = read_sha1_file(item->object.oid.hash , &type, &size);
+ buffer = read_object_file(&item->object.oid , &type, &size);
if (!buffer)
return quiet_on_missing ? -1 :
error("Could not read %s",
if (!buffer)
return quiet_on_missing ? -1 :
error("Could not read %s",
- ptr->ptr = read_sha1_file(oid->hash , &type, &size);
+ ptr->ptr = read_object_file(oid , &type, &size);
if (!ptr->ptr || type != OBJ_BLOB)
die("unable to read blob object %s", oid_to_hex(oid));
ptr->size = size;
if (!ptr->ptr || type != OBJ_BLOB)
die("unable to read blob object %s", oid_to_hex(oid));
ptr->size = size;