git-p4: don't groom exclude path list on every commit
[gitweb.git] / builtin / count-objects.c
index 33343818c830bf64452640b14b2ce7b876221022..3fae474f6f1f4fb78911ab4a26a160f04527d292 100644 (file)
@@ -7,10 +7,12 @@
 #include "cache.h"
 #include "config.h"
 #include "dir.h"
+#include "repository.h"
 #include "builtin.h"
 #include "parse-options.h"
 #include "quote.h"
 #include "packfile.h"
+#include "object-store.h"
 
 static unsigned long garbage;
 static off_t size_garbage;
@@ -64,7 +66,7 @@ static int count_loose(const struct object_id *oid, const char *path, void *data
        else {
                loose_size += on_disk_bytes(st);
                loose++;
-               if (verbose && has_sha1_pack(oid->hash))
+               if (verbose && has_object_pack(oid))
                        packed_loose++;
        }
        return 0;
@@ -76,10 +78,10 @@ static int count_cruft(const char *basename, const char *path, void *data)
        return 0;
 }
 
-static int print_alternate(struct alternate_object_database *alt, void *data)
+static int print_alternate(struct object_directory *odb, void *data)
 {
        printf("alternate: ");
-       quote_c_style(alt->path, NULL, stdout, 0);
+       quote_c_style(odb->path, NULL, stdout, 0);
        putchar('\n');
        return 0;
 }
@@ -120,9 +122,8 @@ int cmd_count_objects(int argc, const char **argv, const char *prefix)
                struct strbuf loose_buf = STRBUF_INIT;
                struct strbuf pack_buf = STRBUF_INIT;
                struct strbuf garbage_buf = STRBUF_INIT;
-               if (!packed_git)
-                       prepare_packed_git();
-               for (p = packed_git; p; p = p->next) {
+
+               for (p = get_all_packs(the_repository); p; p = p->next) {
                        if (!p->pack_local)
                                continue;
                        if (open_pack_index(p))