diff options
Diffstat (limited to 'packfile.c')
| -rw-r--r-- | packfile.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/packfile.c b/packfile.c index 79e21ab18e..2023df1b75 100644 --- a/packfile.c +++ b/packfile.c @@ -1,4 +1,6 @@ -#include "cache.h" +#include "git-compat-util.h" +#include "alloc.h" +#include "hex.h" #include "list.h" #include "pack.h" #include "repository.h" @@ -1008,6 +1010,16 @@ void reprepare_packed_git(struct repository *r) struct object_directory *odb; obj_read_lock(); + + /* + * Reprepare alt odbs, in case the alternates file was modified + * during the course of this process. This only _adds_ odbs to + * the linked list, so existing odbs will continue to exist for + * the lifetime of the process. + */ + r->objects->loaded_alternates = 0; + prepare_alt_odb(r); + for (odb = r->objects->odb; odb; odb = odb->next) odb_clear_loose_cache(odb); @@ -2204,8 +2216,8 @@ int for_each_packed_object(each_packed_object_fn cb, void *data, } static int add_promisor_object(const struct object_id *oid, - struct packed_git *pack, - uint32_t pos, + struct packed_git *pack UNUSED, + uint32_t pos UNUSED, void *set_) { struct oidset *set = set_; |
