From: Sverre Rabbelier Date: Sat, 16 Jul 2011 13:03:29 GMT Subject: [PATCH v3 09/23] remote-curl: accept empty line as terminator Message-ID: <1310821424-4750-10-git-send-email-srabbelier@gmail.com> In-Reply-To: <1310821424-4750-1-git-send-email-srabbelier@gmail.com> This went unnoticed because the transport helper infrastructore did not check the return value of the helper, nor did the helper print anything before exiting. While at it also make sure that the stream doesn't end unexpectedly. Signed-off-by: Sverre Rabbelier --- Added the 'check fo unexpected EOF' chunk. remote-curl.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/remote-curl.c b/remote-curl.c index b5be25c..30554f4 100644 --- a/remote-curl.c +++ b/remote-curl.c @@ -857,7 +857,14 @@ int main(int argc, const char **argv) http_init(remote); do { - if (strbuf_getline(&buf, stdin, '\n') == EOF) + if (strbuf_getline(&buf, stdin, '\n') == EOF) { + if (ferror(stdin)) + fprintf(stderr, "Error reading command stream\n"); + else + fprintf(stderr, "Unexpected end of command stream\n"); + return 1; + } + if (buf.len == 0) break; if (!prefixcmp(buf.buf, "fetch ")) { if (nongit) @@ -897,6 +904,7 @@ int main(int argc, const char **argv) printf("\n"); fflush(stdout); } else { + fprintf(stderr, "Unknown command '%s'\n", buf.buf); return 1; } strbuf_reset(&buf); -- 1.7.5.1.292.g728120