submodule--helper: fix potential NULL-dereference
[gitweb.git] / builtin / submodule--helper.c
index f4c3eff179b5f25e5d09c26348c107d0582455f2..4f0b0022eec10428774d4fad769987a0ddf42b50 100644 (file)
@@ -194,6 +194,9 @@ static int module_clone(int argc, const char **argv, const char *prefix)
        argc = parse_options(argc, argv, prefix, module_clone_options,
                             git_submodule_helper_usage, 0);
 
+       if (!path || !*path)
+               die(_("submodule--helper: unspecified or empty --path"));
+
        strbuf_addf(&sb, "%s/modules/%s", get_git_dir(), name);
        sm_gitdir = strbuf_detach(&sb, NULL);
 
@@ -215,10 +218,7 @@ static int module_clone(int argc, const char **argv, const char *prefix)
        if (safe_create_leading_directories_const(path) < 0)
                die(_("could not create directory '%s'"), path);
 
-       if (path && *path)
-               strbuf_addf(&sb, "%s/.git", path);
-       else
-               strbuf_addstr(&sb, ".git");
+       strbuf_addf(&sb, "%s/.git", path);
 
        if (safe_create_leading_directories_const(sb.buf) < 0)
                die(_("could not create leading directories of '%s'"), sb.buf);