From 38bbc0a580f9f10570b1d1b5d3e92f0e6feb2970 Mon Sep 17 00:00:00 2001 From: Matthew Booth Date: Tue, 29 Apr 2014 16:03:27 +0100 Subject: curl: Fix return from curl_read_cb with invalid state A curl write callback is supposed to return the number of bytes it handled. curl_read_cb would have erroneously reported it had handled all bytes in the event that the internal curl state was invalid. Signed-off-by: Matthew Booth Tested-by: Richard W.M. Jones Signed-off-by: Kevin Wolf --- block/curl.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'block/curl.c') diff --git a/block/curl.c b/block/curl.c index e97f449..26c9cac 100644 --- a/block/curl.c +++ b/block/curl.c @@ -155,7 +155,7 @@ static size_t curl_read_cb(void *ptr, size_t size, size_t nmemb, void *opaque) DPRINTF("CURL: Just reading %zd bytes\n", realsize); if (!s || !s->orig_buf) - goto read_end; + return 0; if (s->buf_off >= s->buf_len) { /* buffer full, read nothing */ @@ -180,7 +180,6 @@ static size_t curl_read_cb(void *ptr, size_t size, size_t nmemb, void *opaque) } } -read_end: return realsize; } -- cgit v1.1