Stefan Beller <[email protected]> writes:
> +
> + /* ERROR_WOULD_LOSE_UNTRACKED_SUBMODULE */
> + "Submodule '%s' cannot be deleted as it contains untracked files.",
OK.
> + msgs[ERROR_WOULD_LOSE_UNTRACKED_SUBMODULE] =
> + _("Submodule '%s' cannot be deleted as it contains untracked
> files.");
OK again.
> @@ -240,12 +246,44 @@ static void display_error_msgs(struct
> unpack_trees_options *o)
> fprintf(stderr, _("Aborting\n"));
> }
>
> +static int submodule_check_from_to(const struct cache_entry *ce, const char
> *old_id, const char *new_id, struct unpack_trees_options *o)
> +{
> + if (submodule_go_from_to(ce->name, old_id,
> + new_id, 1, o->reset))
> + return o->gently ? -1 :
> + add_rejected_path(o,
> ERROR_WOULD_LOSE_UNTRACKED_SUBMODULE, ce->name);
Is potential loss of untracked paths the only reason
submodule_go_from_to() would fail? I somehow thought that it would
not even care about untracked paths but cared deeply about already
added changes.