summaryrefslogtreecommitdiff
path: root/server-info.c
diff options
context:
space:
mode:
Diffstat (limited to 'server-info.c')
-rw-r--r--server-info.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/server-info.c b/server-info.c
index 5ec5b1d827..7ce6dcd67b 100644
--- a/server-info.c
+++ b/server-info.c
@@ -1,8 +1,11 @@
#include "cache.h"
+#include "repository.h"
#include "refs.h"
#include "object.h"
#include "commit.h"
#include "tag.h"
+#include "packfile.h"
+#include "object-store.h"
/*
* Create the file "path" by writing to a temporary file and renaming
@@ -89,8 +92,6 @@ static struct pack_info {
int old_num;
int new_num;
int nr_alloc;
- int nr_heads;
- unsigned char (*head)[20];
} **info;
static int num_pack;
static const char *objdir;
@@ -198,8 +199,7 @@ static void init_pack_info(const char *infofile, int force)
objdir = get_object_directory();
objdirlen = strlen(objdir);
- prepare_packed_git();
- for (p = packed_git; p; p = p->next) {
+ for (p = get_packed_git(the_repository); p; p = p->next) {
/* we ignore things on alternate path since they are
* not available to the pullers in general.
*/
@@ -209,7 +209,7 @@ static void init_pack_info(const char *infofile, int force)
}
num_pack = i;
info = xcalloc(num_pack, sizeof(struct pack_info *));
- for (i = 0, p = packed_git; p; p = p->next) {
+ for (i = 0, p = get_packed_git(the_repository); p; p = p->next) {
if (!p->pack_local)
continue;
info[i] = xcalloc(1, sizeof(struct pack_info));
@@ -223,12 +223,9 @@ static void init_pack_info(const char *infofile, int force)
else
stale = 1;
- for (i = 0; i < num_pack; i++) {
- if (stale) {
+ for (i = 0; i < num_pack; i++)
+ if (stale)
info[i]->old_num = -1;
- info[i]->nr_heads = 0;
- }
- }
/* renumber them */
QSORT(info, num_pack, compare_info);