builtin/submodule--helper: factor out method to update a single submodule
authorStefan Beller <sbeller@google.com>
Fri, 3 Aug 2018 22:23:20 +0000 (15:23 -0700)
committerJunio C Hamano <gitster@pobox.com>
Fri, 3 Aug 2018 22:37:12 +0000 (15:37 -0700)
In a later patch we'll find this method handy.

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/submodule--helper.c
index 40b94dd622e74dda9052c3a7922f9808cdf49db9..8b1088ab58a88e7484515b792d692c195f826814 100644 (file)
@@ -1727,10 +1727,17 @@ static int git_update_clone_config(const char *var, const char *value,
        return 0;
 }
 
+static void update_submodule(struct update_clone_data *ucd)
+{
+       fprintf(stdout, "dummy %s %d\t%s\n",
+               oid_to_hex(&ucd->oid),
+               ucd->just_cloned,
+               ucd->sub->path);
+}
+
 static int update_submodules(struct submodule_update_clone *suc)
 {
        int i;
-       struct strbuf sb = STRBUF_INIT;
 
        run_processes_parallel(suc->max_jobs,
                               update_clone_get_next_task,
@@ -1749,16 +1756,9 @@ static int update_submodules(struct submodule_update_clone *suc)
        if (suc->quickstop)
                return 1;
 
-       for (i = 0; i < suc->update_clone_nr; i++) {
-               strbuf_addf(&sb, "dummy %s %d\t%s\n",
-                       oid_to_hex(&suc->update_clone[i].oid),
-                       suc->update_clone[i].just_cloned,
-                       suc->update_clone[i].sub->path);
-               fprintf(stdout, "%s", sb.buf);
-               strbuf_reset(&sb);
-       }
+       for (i = 0; i < suc->update_clone_nr; i++)
+               update_submodule(&suc->update_clone[i]);
 
-       strbuf_release(&sb);
        return 0;
 }