diff options
author | Jeff King <peff@peff.net> | 2013-04-10 17:16:03 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-04-11 09:00:54 -0700 |
commit | c096955c5bb8e20186cc7c07d4d12b77ddcd01c6 (patch) | |
tree | 2dd5a22cee610cc01ad9a1762f1ab239ab44e517 | |
parent | transport-helper: report errors properly (diff) | |
download | tgif-c096955c5bb8e20186cc7c07d4d12b77ddcd01c6.tar.xz |
transport-helper: mention helper name when it dies
When we try to read from a remote-helper and get EOF or an
error, we print a message indicating that the helper died.
However, users may not know that a remote helper was in use
(e.g., when using git-over-http), or even what a remote
helper is.
Let's print the name of the helper (e.g., "git-remote-https");
this makes it more obvious what the program is for, and
provides a useful token for reporting bugs or searching for
more information (e.g., in manpages).
Signed-off-by: Jeff King <peff@peff.net>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | t/t5801-remote-helpers.sh | 2 | ||||
-rw-r--r-- | transport-helper.c | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/t/t5801-remote-helpers.sh b/t/t5801-remote-helpers.sh index aafc46ac94..8b2cb68ec5 100755 --- a/t/t5801-remote-helpers.sh +++ b/t/t5801-remote-helpers.sh @@ -182,7 +182,7 @@ test_expect_success 'proper failure checks for pushing' ' cd local && test_must_fail git push --all 2> error && cat error && - grep -q "Reading from remote helper failed" error + grep -q "Reading from helper .git-remote-testgit. failed" error ) ' diff --git a/transport-helper.c b/transport-helper.c index 96081cc392..3fc43b97f5 100644 --- a/transport-helper.c +++ b/transport-helper.c @@ -46,7 +46,7 @@ static void sendline(struct helper_data *helper, struct strbuf *buffer) die_errno("Full write to remote helper failed"); } -static int recvline_fh(FILE *helper, struct strbuf *buffer) +static int recvline_fh(FILE *helper, struct strbuf *buffer, const char *name) { strbuf_reset(buffer); if (debug) @@ -54,7 +54,7 @@ static int recvline_fh(FILE *helper, struct strbuf *buffer) if (strbuf_getline(buffer, helper, '\n') == EOF) { if (debug) fprintf(stderr, "Debug: Remote helper quit.\n"); - die("Reading from remote helper failed"); + die("Reading from helper 'git-remote-%s' failed", name); } if (debug) @@ -64,7 +64,7 @@ static int recvline_fh(FILE *helper, struct strbuf *buffer) static int recvline(struct helper_data *helper, struct strbuf *buffer) { - return recvline_fh(helper->out, buffer); + return recvline_fh(helper->out, buffer, helper->name); } static void xchgline(struct helper_data *helper, struct strbuf *buffer) @@ -536,7 +536,7 @@ static int process_connect_service(struct transport *transport, goto exit; sendline(data, &cmdbuf); - recvline_fh(input, &cmdbuf); + recvline_fh(input, &cmdbuf, name); if (!strcmp(cmdbuf.buf, "")) { data->no_disconnect_req = 1; if (debug) |