mirror of
https://github.com/git/git.git
synced 2026-01-09 17:46:37 +00:00
Merge branch 'jc/submodule-add'
"git submodule add" to add a submodule under <name> segfaulted, when a submodule.<name>.something is already in .gitmodules file without defining where its submodule.<name>.path is, which has been corrected. * jc/submodule-add: submodule add: sanity check existing .gitmodules
This commit is contained in:
@@ -1903,6 +1903,13 @@ static int determine_submodule_update_strategy(struct repository *r,
|
||||
const char *val;
|
||||
int ret;
|
||||
|
||||
/*
|
||||
* NEEDSWORK: audit and ensure that update_submodule() has right
|
||||
* to assume that submodule_from_path() above will always succeed.
|
||||
*/
|
||||
if (!sub)
|
||||
BUG("update_submodule assumes a submodule exists at path (%s)",
|
||||
path);
|
||||
key = xstrfmt("submodule.%s.update", sub->name);
|
||||
|
||||
if (update) {
|
||||
@@ -3527,14 +3534,15 @@ static int module_add(int argc, const char **argv, const char *prefix,
|
||||
}
|
||||
}
|
||||
|
||||
if(!add_data.sm_name)
|
||||
if (!add_data.sm_name)
|
||||
add_data.sm_name = add_data.sm_path;
|
||||
|
||||
existing = submodule_from_name(the_repository,
|
||||
null_oid(the_hash_algo),
|
||||
add_data.sm_name);
|
||||
|
||||
if (existing && strcmp(existing->path, add_data.sm_path)) {
|
||||
if (existing && existing->path &&
|
||||
strcmp(existing->path, add_data.sm_path)) {
|
||||
if (!force) {
|
||||
die(_("submodule name '%s' already used for path '%s'"),
|
||||
add_data.sm_name, existing->path);
|
||||
|
||||
Reference in New Issue
Block a user