diff options
-rw-r--r-- | git.c | 6 | ||||
-rwxr-xr-x | t/t1300-repo-config.sh | 2 |
2 files changed, 3 insertions, 5 deletions
@@ -55,7 +55,7 @@ static void commit_pager_choice(void) { static int handle_options(const char ***argv, int *argc, int *envchanged) { - int handled = 0; + const char **orig_argv = *argv; while (*argc > 0) { const char *cmd = (*argv)[0]; @@ -105,7 +105,6 @@ static int handle_options(const char ***argv, int *argc, int *envchanged) *envchanged = 1; (*argv)++; (*argc)--; - handled++; } else if (!prefixcmp(cmd, "--git-dir=")) { setenv(GIT_DIR_ENVIRONMENT, cmd + 10, 1); if (envchanged) @@ -145,9 +144,8 @@ static int handle_options(const char ***argv, int *argc, int *envchanged) (*argv)++; (*argc)--; - handled++; } - return handled; + return (*argv) - orig_argv; } static int handle_alias(int *argcp, const char ***argv) diff --git a/t/t1300-repo-config.sh b/t/t1300-repo-config.sh index 52c9ac9b6..de2a014d8 100755 --- a/t/t1300-repo-config.sh +++ b/t/t1300-repo-config.sh @@ -854,7 +854,7 @@ test_expect_success 'git -c "key=value" support' ' test_must_fail git -c core.name=value config name ' -test_expect_failure 'git -c works with aliases of builtins' ' +test_expect_success 'git -c works with aliases of builtins' ' git config alias.checkconfig "-c foo.check=bar config foo.check" && echo bar >expect && git checkconfig >actual && |