SZEDER Gábor <szeder....@gmail.com> writes:

>> When an error occurs in updating the working tree of a submodule in
>> submodule_move_head, tell the user which submodule the error occurred in.
>> 
>> The call to read-tree contains a super-prefix, such that the read-tree
>> will correctly report any path related issues, but some error messages
>> do not contain a path, for example:
>> 
>>   ~/gerrit$ git checkout --recurse-submodules origin/master
>>   ~/gerrit$ fatal: failed to unpack tree object 
>> 07672f31880ba80300b38492df9d0acfcd6ee00a
>> 
>> Give the hint which submodule has a problem.
>> 
>> Signed-off-by: Stefan Beller <sbel...@google.com>
>> ---
>>  submodule.c               | 2 +-
>>  t/lib-submodule-update.sh | 3 ++-
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>> 
>> diff --git a/submodule.c b/submodule.c
>> index 939d6870ecd..ebd092a14fd 100644
>> --- a/submodule.c
>> +++ b/submodule.c
>> @@ -1668,7 +1668,7 @@ int submodule_move_head(const char *path,
>>      argv_array_push(&cp.args, new_head ? new_head : empty_tree_oid_hex());
>>  
>>      if (run_command(&cp)) {
>> -            ret = -1;
>> +            ret = error(_("Submodule '%s' could not be updated."), path);
>
> This is a translated error message ...
>
>>              goto out;
>>      }
>>  
>> diff --git a/t/lib-submodule-update.sh b/t/lib-submodule-update.sh
>> index 1f38a85371a..e27f5d8541d 100755
>> --- a/t/lib-submodule-update.sh
>> +++ b/t/lib-submodule-update.sh
>> @@ -781,7 +781,8 @@ test_submodule_recursing_with_args_common() {
>>              (
>>                      cd submodule_update &&
>>                      git branch -t invalid_sub1 origin/invalid_sub1 &&
>> -                    test_must_fail $command invalid_sub1 &&
>> +                    test_must_fail $command invalid_sub1 2>err &&
>> +                    grep sub1 err &&
>
> ... so the test should use 'test_i18ngrep' to check it.

Thanks for being a careful reviewer, as always.

Will tweak locally to skip one round-trip.

Reply via email to