]> git.ipfire.org Git - thirdparty/git.git/commitdiff
midx-write: pass down repository to `write_midx_file[_only]`
authorKarthik Nayak <karthik.188@gmail.com>
Wed, 27 Nov 2024 16:28:29 +0000 (17:28 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 4 Dec 2024 01:32:20 +0000 (10:32 +0900)
In a previous commit, we passed the repository field to all
subcommands in the `builtin/` directory. Utilize this to pass the
repository field down to the `write_midx_file[_only]` functions to
remove the usage of `the_repository` global variables.

With this, all usage of global variables in `midx-write.c` is removed,
hence, remove the `USE_THE_REPOSITORY_VARIABLE` guard from the file.

Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/multi-pack-index.c
builtin/repack.c
midx-write.c
midx.h

index 85e40a4b6d3e47e9ec1ec27c094455e5ba75b5b0..2a938466f53aaa11096170554fe11a4ed46a25e4 100644 (file)
@@ -120,7 +120,7 @@ static void read_packs_from_stdin(struct string_list *to)
 
 static int cmd_multi_pack_index_write(int argc, const char **argv,
                                      const char *prefix,
-                                     struct repository *repo UNUSED)
+                                     struct repository *repo)
 {
        struct option *options;
        static struct option builtin_multi_pack_index_write_options[] = {
@@ -165,7 +165,7 @@ static int cmd_multi_pack_index_write(int argc, const char **argv,
 
                read_packs_from_stdin(&packs);
 
-               ret = write_midx_file_only(opts.object_dir, &packs,
+               ret = write_midx_file_only(repo, opts.object_dir, &packs,
                                           opts.preferred_pack,
                                           opts.refs_snapshot, opts.flags);
 
@@ -176,7 +176,7 @@ static int cmd_multi_pack_index_write(int argc, const char **argv,
 
        }
 
-       ret = write_midx_file(opts.object_dir, opts.preferred_pack,
+       ret = write_midx_file(repo, opts.object_dir, opts.preferred_pack,
                              opts.refs_snapshot, opts.flags);
 
        free(opts.refs_snapshot);
index 96a4fa234bddfd2b63c8d9733379d9b1012a4014..9c21fc482dfb387c818c0d0a74f781848b5a0953 100644 (file)
@@ -1569,7 +1569,7 @@ int cmd_repack(int argc,
                unsigned flags = 0;
                if (git_env_bool(GIT_TEST_MULTI_PACK_INDEX_WRITE_INCREMENTAL, 0))
                        flags |= MIDX_WRITE_INCREMENTAL;
-               write_midx_file(repo_get_object_directory(the_repository),
+               write_midx_file(the_repository, repo_get_object_directory(the_repository),
                                NULL, NULL, flags);
        }
 
index 1c355cdf8db4e9fed61a4aabf61a237ad26181ce..1bc2f5256916e69924245951f654c1047ffeab84 100644 (file)
@@ -1,5 +1,3 @@
-#define USE_THE_REPOSITORY_VARIABLE
-
 #include "git-compat-util.h"
 #include "abspath.h"
 #include "config.h"
@@ -1505,24 +1503,22 @@ cleanup:
        return result;
 }
 
-int write_midx_file(const char *object_dir,
+int write_midx_file(struct repository *r, const char *object_dir,
                    const char *preferred_pack_name,
-                   const char *refs_snapshot,
-                   unsigned flags)
+                   const char *refs_snapshot, unsigned flags)
 {
-       return write_midx_internal(the_repository, object_dir, NULL, NULL,
-                                  preferred_pack_name, refs_snapshot, flags);
+       return write_midx_internal(r, object_dir, NULL, NULL,
+                                  preferred_pack_name, refs_snapshot,
+                                  flags);
 }
 
-int write_midx_file_only(const char *object_dir,
+int write_midx_file_only(struct repository *r, const char *object_dir,
                         struct string_list *packs_to_include,
                         const char *preferred_pack_name,
-                        const char *refs_snapshot,
-                        unsigned flags)
+                        const char *refs_snapshot, unsigned flags)
 {
-       return write_midx_internal(the_repository, object_dir, packs_to_include,
-                                  NULL, preferred_pack_name, refs_snapshot,
-                                  flags);
+       return write_midx_internal(r, object_dir, packs_to_include, NULL,
+                                  preferred_pack_name, refs_snapshot, flags);
 }
 
 int expire_midx_packs(struct repository *r, const char *object_dir, unsigned flags)
diff --git a/midx.h b/midx.h
index 3b0ac4d8788b373c59fe69ca2d78e9d914702bc0..c37ad5b5242b56d21fd76bd59957a1bdb82786ec 100644 (file)
--- a/midx.h
+++ b/midx.h
@@ -123,15 +123,13 @@ int prepare_multi_pack_index_one(struct repository *r, const char *object_dir, i
  * Variant of write_midx_file which writes a MIDX containing only the packs
  * specified in packs_to_include.
  */
-int write_midx_file(const char *object_dir,
-                   const char *preferred_pack_name,
-                   const char *refs_snapshot,
+int write_midx_file(struct repository *r, const char *object_dir,
+                   const char *preferred_pack_name, const char *refs_snapshot,
                    unsigned flags);
-int write_midx_file_only(const char *object_dir,
+int write_midx_file_only(struct repository *r, const char *object_dir,
                         struct string_list *packs_to_include,
                         const char *preferred_pack_name,
-                        const char *refs_snapshot,
-                        unsigned flags);
+                        const char *refs_snapshot, unsigned flags);
 void clear_midx_file(struct repository *r);
 int verify_midx_file(struct repository *r, const char *object_dir, unsigned flags);
 int expire_midx_packs(struct repository *r, const char *object_dir, unsigned flags);