]> git.ipfire.org Git - thirdparty/git.git/commitdiff
archive: remove the_repository global variable
authorJohn Cai <johncai86@gmail.com>
Thu, 10 Oct 2024 21:13:48 +0000 (21:13 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 11 Oct 2024 16:37:18 +0000 (09:37 -0700)
As part of the effort to get rid of global state due to the global
the_repository variable, replace the_repository with the repository
argument that gets passed down through the builtin function.

The repo might be NULL, but we should be safe in write_archive() because
it detects if we are outside of a repository and calls
setup_git_directory() which will error.

Signed-off-by: John Cai <johncai86@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/archive.c

index dc926d1a3dfa9029cc284a32d9cdab88052e6d4f..13ea7308c8b8b99afd59586e2454fc870cd0aedf 100644 (file)
@@ -2,7 +2,6 @@
  * Copyright (c) 2006 Franck Bui-Huu
  * Copyright (c) 2006 Rene Scharfe
  */
-#define USE_THE_REPOSITORY_VARIABLE
 #include "builtin.h"
 #include "archive.h"
 #include "gettext.h"
@@ -79,7 +78,7 @@ static int run_remote_archiver(int argc, const char **argv,
 int cmd_archive(int argc,
                const char **argv,
                const char *prefix,
-               struct repository *repo UNUSED)
+               struct repository *repo)
 {
        const char *exec = "git-upload-archive";
        char *output = NULL;
@@ -110,7 +109,7 @@ int cmd_archive(int argc,
 
        setvbuf(stderr, NULL, _IOLBF, BUFSIZ);
 
-       ret = write_archive(argc, argv, prefix, the_repository, output, 0);
+       ret = write_archive(argc, argv, prefix, repo, output, 0);
 
 out:
        free(output);