зеркало из https://github.com/microsoft/git.git
packfile: allow prepare_packed_git_one to handle arbitrary repositories
Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
a49d283435
Коммит
935cdd6922
|
@ -735,8 +735,7 @@ static void report_pack_garbage(struct string_list *list)
|
|||
report_helper(list, seen_bits, first, list->nr);
|
||||
}
|
||||
|
||||
#define prepare_packed_git_one(r, o, l) prepare_packed_git_one_##r(o, l)
|
||||
static void prepare_packed_git_one_the_repository(char *objdir, int local)
|
||||
static void prepare_packed_git_one(struct repository *r, char *objdir, int local)
|
||||
{
|
||||
struct strbuf path = STRBUF_INIT;
|
||||
size_t dirnamelen;
|
||||
|
@ -769,7 +768,7 @@ static void prepare_packed_git_one_the_repository(char *objdir, int local)
|
|||
base_len = path.len;
|
||||
if (strip_suffix_mem(path.buf, &base_len, ".idx")) {
|
||||
/* Don't reopen a pack we already have. */
|
||||
for (p = the_repository->objects->packed_git; p;
|
||||
for (p = r->objects->packed_git; p;
|
||||
p = p->next) {
|
||||
size_t len;
|
||||
if (strip_suffix(p->pack_name, ".pack", &len) &&
|
||||
|
@ -783,7 +782,7 @@ static void prepare_packed_git_one_the_repository(char *objdir, int local)
|
|||
* corresponding .pack file that we can map.
|
||||
*/
|
||||
(p = add_packed_git(path.buf, path.len, local)) != NULL)
|
||||
install_packed_git(the_repository, p);
|
||||
install_packed_git(r, p);
|
||||
}
|
||||
|
||||
if (!report_garbage)
|
||||
|
|
Загрузка…
Ссылка в новой задаче