summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
authorStefan Beller <sbeller@google.com>2018-06-29 01:22:18 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-06-29 17:43:40 (GMT)
commit108ed1a3d88b04bb7a6d0b0a0e7c642a28a7845a (patch)
treea8650c91940e56f351e79bb11efa1ca725bf0893 /object.c
parent4ff7e5c9362875b2296fd2e289dba487a38609f0 (diff)
downloadgit-108ed1a3d88b04bb7a6d0b0a0e7c642a28a7845a.zip
git-108ed1a3d88b04bb7a6d0b0a0e7c642a28a7845a.tar.gz
git-108ed1a3d88b04bb7a6d0b0a0e7c642a28a7845a.tar.bz2
object.c: allow parse_object_buffer to handle arbitrary repositories
Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'object.c')
-rw-r--r--object.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/object.c b/object.c
index 9d58844..cd870fe 100644
--- a/object.c
+++ b/object.c
@@ -185,21 +185,21 @@ struct object *lookup_unknown_object(const unsigned char *sha1)
return obj;
}
-struct object *parse_object_buffer_the_repository(const struct object_id *oid, enum object_type type, unsigned long size, void *buffer, int *eaten_p)
+struct object *parse_object_buffer(struct repository *r, const struct object_id *oid, enum object_type type, unsigned long size, void *buffer, int *eaten_p)
{
struct object *obj;
*eaten_p = 0;
obj = NULL;
if (type == OBJ_BLOB) {
- struct blob *blob = lookup_blob(the_repository, oid);
+ struct blob *blob = lookup_blob(r, oid);
if (blob) {
if (parse_blob_buffer(blob, buffer, size))
return NULL;
obj = &blob->object;
}
} else if (type == OBJ_TREE) {
- struct tree *tree = lookup_tree(the_repository, oid);
+ struct tree *tree = lookup_tree(r, oid);
if (tree) {
obj = &tree->object;
if (!tree->buffer)
@@ -211,20 +211,20 @@ struct object *parse_object_buffer_the_repository(const struct object_id *oid, e
}
}
} else if (type == OBJ_COMMIT) {
- struct commit *commit = lookup_commit(the_repository, oid);
+ struct commit *commit = lookup_commit(r, oid);
if (commit) {
- if (parse_commit_buffer(the_repository, commit, buffer, size, 1))
+ if (parse_commit_buffer(r, commit, buffer, size, 1))
return NULL;
- if (!get_cached_commit_buffer(the_repository, commit, NULL)) {
- set_commit_buffer(the_repository, commit, buffer, size);
+ if (!get_cached_commit_buffer(r, commit, NULL)) {
+ set_commit_buffer(r, commit, buffer, size);
*eaten_p = 1;
}
obj = &commit->object;
}
} else if (type == OBJ_TAG) {
- struct tag *tag = lookup_tag(the_repository, oid);
+ struct tag *tag = lookup_tag(r, oid);
if (tag) {
- if (parse_tag_buffer(the_repository, tag, buffer, size))
+ if (parse_tag_buffer(r, tag, buffer, size))
return NULL;
obj = &tag->object;
}