packfile: keep prepare_packed_git() private

The reason callers have to call this is to make sure either packed_git
or packed_git_mru pointers are initialized since we don't do that by
default. Sometimes it's hard to see this connection between where the
function is called and where packed_git pointer is used (sometimes in
separate functions).

Keep this dependency internal because now all access to packed_git and
packed_git_mru must go through get_xxx() wrappers.

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:
Nguyễn Thái Ngọc Duy
2018-03-23 18:45:27 +01:00
committed by Junio C Hamano
parent 0a0dd632aa
commit 464416a2ea
12 changed files with 5 additions and 16 deletions

View File

@ -803,6 +803,7 @@ static void prepare_packed_git_one(struct repository *r, char *objdir, int local
strbuf_release(&path);
}
static void prepare_packed_git(struct repository *r);
/*
* Give a fast, rough count of the number of objects in the repository. This
* ignores loose objects completely. If you have a lot of them, then either
@ -883,7 +884,7 @@ static void prepare_packed_git_mru(struct repository *r)
list_add_tail(&p->mru, &r->objects->packed_git_mru);
}
void prepare_packed_git(struct repository *r)
static void prepare_packed_git(struct repository *r)
{
struct alternate_object_database *alt;
@ -907,11 +908,13 @@ void reprepare_packed_git(struct repository *r)
struct packed_git *get_packed_git(struct repository *r)
{
prepare_packed_git(r);
return r->objects->packed_git;
}
struct list_head *get_packed_git_mru(struct repository *r)
{
prepare_packed_git(r);
return &r->objects->packed_git_mru;
}