submodule--helper clone: create the submodule path just once

We make sure that the parent directory of path exists (or create it
otherwise) and then do the same for path + "/.git".

That is equivalent to just making sure that the parent directory of
path + "/.git" exists (or create it otherwise).

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Stefan Beller 2016-03-31 14:04:38 -07:00 committed by Junio C Hamano
parent 3c0663e166
commit 47d5d64879

View File

@ -215,11 +215,7 @@ static int module_clone(int argc, const char **argv, const char *prefix)
} }
/* Write a .git file in the submodule to redirect to the superproject. */ /* Write a .git file in the submodule to redirect to the superproject. */
if (safe_create_leading_directories_const(path) < 0)
die(_("could not create directory '%s'"), path);
strbuf_addf(&sb, "%s/.git", path); strbuf_addf(&sb, "%s/.git", path);
if (safe_create_leading_directories_const(sb.buf) < 0) if (safe_create_leading_directories_const(sb.buf) < 0)
die(_("could not create leading directories of '%s'"), sb.buf); die(_("could not create leading directories of '%s'"), sb.buf);
submodule_dot_git = fopen(sb.buf, "w"); submodule_dot_git = fopen(sb.buf, "w");