verify-commit: simplify parameters to run_gpg_verify()
[gitweb.git] / builtin / submodule--helper.c
index c934c21e3d0128138d1c16d689b0611ad3e81142..7262f1a0005f203f0e24bd9dacfe6d336c17558a 100644 (file)
@@ -348,7 +348,7 @@ static int module_list_compute(int argc, const char **argv,
                        i++;
        }
 
-       if (ps_matched && report_path_error(ps_matched, pathspec, prefix))
+       if (ps_matched && report_path_error(ps_matched, pathspec))
                result = -1;
 
        free(ps_matched);
@@ -1816,11 +1816,10 @@ static int update_submodules(struct submodule_update_clone *suc)
 {
        int i;
 
-       run_processes_parallel(suc->max_jobs,
-                              update_clone_get_next_task,
-                              update_clone_start_failure,
-                              update_clone_task_finished,
-                              suc);
+       run_processes_parallel_tr2(suc->max_jobs, update_clone_get_next_task,
+                                  update_clone_start_failure,
+                                  update_clone_task_finished, suc, "submodule",
+                                  "parallel/update");
 
        /*
         * We saved the output and put it out all at once now.
@@ -2108,8 +2107,7 @@ static int absorb_git_dirs(int argc, const char **argv, const char *prefix)
                return 1;
 
        for (i = 0; i < list.nr; i++)
-               absorb_git_dir_into_superproject(prefix,
-                               list.entries[i]->name, flags);
+               absorb_git_dir_into_superproject(list.entries[i]->name, flags);
 
        return 0;
 }
@@ -2148,17 +2146,22 @@ static int check_name(int argc, const char **argv, const char *prefix)
 static int module_config(int argc, const char **argv, const char *prefix)
 {
        enum {
-               CHECK_WRITEABLE = 1
+               CHECK_WRITEABLE = 1,
+               DO_UNSET = 2
        } command = 0;
 
        struct option module_config_options[] = {
                OPT_CMDMODE(0, "check-writeable", &command,
                            N_("check if it is safe to write to the .gitmodules file"),
                            CHECK_WRITEABLE),
+               OPT_CMDMODE(0, "unset", &command,
+                           N_("unset the config in the .gitmodules file"),
+                           DO_UNSET),
                OPT_END()
        };
        const char *const git_submodule_helper_usage[] = {
-               N_("git submodule--helper config name [value]"),
+               N_("git submodule--helper config <name> [<value>]"),
+               N_("git submodule--helper config --unset <name>"),
                N_("git submodule--helper config --check-writeable"),
                NULL
        };
@@ -2170,15 +2173,17 @@ static int module_config(int argc, const char **argv, const char *prefix)
                return is_writing_gitmodules_ok() ? 0 : -1;
 
        /* Equivalent to ACTION_GET in builtin/config.c */
-       if (argc == 2)
+       if (argc == 2 && command != DO_UNSET)
                return print_config_from_gitmodules(the_repository, argv[1]);
 
        /* Equivalent to ACTION_SET in builtin/config.c */
-       if (argc == 3) {
+       if (argc == 3 || (argc == 2 && command == DO_UNSET)) {
+               const char *value = (argc == 3) ? argv[2] : NULL;
+
                if (!is_writing_gitmodules_ok())
                        die(_("please make sure that the .gitmodules file is in the working tree"));
 
-               return config_set_in_gitmodules_file_gently(argv[1], argv[2]);
+               return config_set_in_gitmodules_file_gently(argv[1], value);
        }
 
        usage_with_options(git_submodule_helper_usage, module_config_options);