From: Junio C Hamano Date: Fri, 28 Dec 2018 18:40:58 +0000 (-0800) Subject: Merge branch 'sb/more-repo-in-api' into md/list-objects-filter-by-depth X-Git-Tag: v2.21.0-rc0~55^2~4 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/b9fbc04e26fcc2c7ba6dda32512b3726d31e4beb Merge branch 'sb/more-repo-in-api' into md/list-objects-filter-by-depth --- b9fbc04e26fcc2c7ba6dda32512b3726d31e4beb diff --cc commit-reach.h index fb8082a2ec,a0d4a29d25..99a43e8b64 --- a/commit-reach.h +++ b/commit-reach.h @@@ -1,29 -1,42 +1,43 @@@ -#ifndef __COMMIT_REACH_H__ -#define __COMMIT_REACH_H__ +#ifndef COMMIT_REACH_H +#define COMMIT_REACH_H +#include "commit.h" #include "commit-slab.h" -struct commit; struct commit_list; -struct contains_cache; struct ref_filter; +struct object_id; +struct object_array; - struct commit_list *get_merge_bases_many(struct commit *one, - int n, - struct commit **twos); - struct commit_list *get_merge_bases_many_dirty(struct commit *one, - int n, - struct commit **twos); - struct commit_list *get_merge_bases(struct commit *one, struct commit *two); - struct commit_list *get_octopus_merge_bases(struct commit_list *in); - + struct commit_list *repo_get_merge_bases(struct repository *r, + struct commit *rev1, + struct commit *rev2); + struct commit_list *repo_get_merge_bases_many(struct repository *r, + struct commit *one, int n, + struct commit **twos); /* To be used only when object flags after this call no longer matter */ - struct commit_list *get_merge_bases_many_dirty(struct commit *one, int n, struct commit **twos); + struct commit_list *repo_get_merge_bases_many_dirty(struct repository *r, + struct commit *one, int n, + struct commit **twos); + #ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS + #define get_merge_bases(r1, r2) repo_get_merge_bases(the_repository, r1, r2) + #define get_merge_bases_many(one, n, two) repo_get_merge_bases_many(the_repository, one, n, two) + #define get_merge_bases_many_dirty(one, n, twos) repo_get_merge_bases_many_dirty(the_repository, one, n, twos) + #endif + + struct commit_list *get_octopus_merge_bases(struct commit_list *in); int is_descendant_of(struct commit *commit, struct commit_list *with_commit); - int in_merge_bases_many(struct commit *commit, int nr_reference, struct commit **reference); - int in_merge_bases(struct commit *commit, struct commit *reference); + int repo_in_merge_bases(struct repository *r, + struct commit *commit, + struct commit *reference); + int repo_in_merge_bases_many(struct repository *r, + struct commit *commit, + int nr_reference, struct commit **reference); + #ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS + #define in_merge_bases(c1, c2) repo_in_merge_bases(the_repository, c1, c2) + #define in_merge_bases_many(c1, n, cs) repo_in_merge_bases_many(the_repository, c1, n, cs) + #endif /* * Takes a list of commits and returns a new list where those diff --cc sha1-file.c index 5bd11c85bc,e77273ccfd..cc952864b2 --- a/sha1-file.c +++ b/sha1-file.c @@@ -1755,10 -1758,10 +1758,10 @@@ int force_object_loose(const struct obj if (has_loose_object(oid)) return 0; - buf = read_object(oid->hash, &type, &len); + buf = read_object(the_repository, oid->hash, &type, &len); if (!buf) return error(_("cannot read sha1_file for %s"), oid_to_hex(oid)); - hdrlen = xsnprintf(hdr, sizeof(hdr), "%s %lu", type_name(type), len) + 1; + hdrlen = xsnprintf(hdr, sizeof(hdr), "%s %"PRIuMAX , type_name(type), (uintmax_t)len) + 1; ret = write_loose_object(oid, hdr, hdrlen, buf, len, mtime); free(buf);