Browse Source

commit: prepare get_commit_buffer to handle any repo

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Stefan Beller 6 years ago committed by Junio C Hamano
parent
commit
07de3fd840
  1. 8
      commit.c
  2. 7
      commit.h
  3. 8
      contrib/coccinelle/the_repository.pending.cocci

8
commit.c

@ -297,13 +297,15 @@ const void *get_cached_commit_buffer(struct repository *r, const struct commit * @@ -297,13 +297,15 @@ const void *get_cached_commit_buffer(struct repository *r, const struct commit *
return v->buffer;
}

const void *get_commit_buffer(const struct commit *commit, unsigned long *sizep)
const void *repo_get_commit_buffer(struct repository *r,
const struct commit *commit,
unsigned long *sizep)
{
const void *ret = get_cached_commit_buffer(the_repository, commit, sizep);
const void *ret = get_cached_commit_buffer(r, commit, sizep);
if (!ret) {
enum object_type type;
unsigned long size;
ret = read_object_file(&commit->object.oid, &type, &size);
ret = repo_read_object_file(r, &commit->object.oid, &type, &size);
if (!ret)
die("cannot read commit object %s",
oid_to_hex(&commit->object.oid));

7
commit.h

@ -117,7 +117,12 @@ const void *get_cached_commit_buffer(struct repository *, const struct commit *, @@ -117,7 +117,12 @@ const void *get_cached_commit_buffer(struct repository *, const struct commit *,
* from disk. The resulting memory should not be modified, and must be given
* to unuse_commit_buffer when the caller is done.
*/
const void *get_commit_buffer(const struct commit *, unsigned long *size);
const void *repo_get_commit_buffer(struct repository *r,
const struct commit *,
unsigned long *size);
#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS
#define get_commit_buffer(c, s) repo_get_commit_buffer(the_repository, c, s)
#endif

/*
* Tell the commit subsytem that we are done with a particular commit buffer.

8
contrib/coccinelle/the_repository.pending.cocci

@ -107,3 +107,11 @@ expression G; @@ -107,3 +107,11 @@ expression G;
- in_merge_bases_many(
+ repo_in_merge_bases_many(the_repository,
E, F, G);

@@
expression E;
expression F;
@@
- get_commit_buffer(
+ repo_get_commit_buffer(the_repository,
E, F);

Loading…
Cancel
Save