Skip to content

Commit

Permalink
Merge branch 'jl/maint-fetch-submodule-check-fix' into maint
Browse files Browse the repository at this point in the history
* jl/maint-fetch-submodule-check-fix:
  fetch: skip on-demand checking when no submodules are configured
  • Loading branch information
Junio C Hamano committed Sep 12, 2011
2 parents c2d5358 + 18322ba commit 8702fee
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 6 deletions.
15 changes: 9 additions & 6 deletions builtin/fetch.c
Original file line number Diff line number Diff line change
Expand Up @@ -941,6 +941,15 @@ int cmd_fetch(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix,
builtin_fetch_options, builtin_fetch_usage, 0);

if (recurse_submodules != RECURSE_SUBMODULES_OFF) {
if (recurse_submodules_default) {
int arg = parse_fetch_recurse_submodules_arg("--recurse-submodules-default", recurse_submodules_default);
set_config_fetch_recurse_submodules(arg);
}
gitmodules_config();
git_config(submodule_config, NULL);
}

if (all) {
if (argc == 1)
die(_("fetch --all does not take a repository argument"));
Expand Down Expand Up @@ -976,12 +985,6 @@ int cmd_fetch(int argc, const char **argv, const char *prefix)
if (!result && (recurse_submodules != RECURSE_SUBMODULES_OFF)) {
const char *options[10];
int num_options = 0;
if (recurse_submodules_default) {
int arg = parse_fetch_recurse_submodules_arg("--recurse-submodules-default", recurse_submodules_default);
set_config_fetch_recurse_submodules(arg);
}
gitmodules_config();
git_config(submodule_config, NULL);
add_options_to_argv(&num_options, options);
result = fetch_populated_submodules(num_options, options,
submodule_prefix,
Expand Down
4 changes: 4 additions & 0 deletions submodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -373,6 +373,10 @@ void check_for_new_submodule_commits(unsigned char new_sha1[20])
const char *argv[] = {NULL, NULL, "--not", "--all", NULL};
int argc = ARRAY_SIZE(argv) - 1;

/* No need to check if there are no submodules configured */
if (!config_name_for_path.nr)
return;

init_revisions(&rev, NULL);
argv[1] = xstrdup(sha1_to_hex(new_sha1));
setup_revisions(argc, argv, &rev, NULL);
Expand Down

0 comments on commit 8702fee

Please sign in to comment.