sub-process: print the cmd when a capability is unsupported

In handshake_capabilities() we use warning() when a capability
is not supported, so the exit code of the function is 0 and no
further error is shown. This is a problem because the warning
message doesn't tell us which subprocess cmd failed.

On the contrary if we cannot write a packet from this function,
we use error() and then subprocess_start() outputs:

    initialization for subprocess '<cmd>' failed

so we can know which subprocess cmd failed.

Let's improve the warning() message, so that we can know which
subprocess cmd failed.

Helped-by: Lars Schneider <larsxschneider@gmail.com>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Christian Couder 2017-08-16 14:40:36 +02:00 коммит произвёл Junio C Hamano
Родитель fa64a2fdbe
Коммит d3ba566342
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -181,8 +181,8 @@ static int handshake_capabilities(struct child_process *process,
if (supported_capabilities)
*supported_capabilities |= capabilities[i].flag;
} else {
warning("external filter requested unsupported filter capability '%s'",
p);
warning("subprocess '%s' requested unsupported capability '%s'",
process->argv[0], p);
}
}