[2/3] wininet: Start the first chunk as soon as we have some data.
Hans Leidekker
hans at codeweavers.com
Tue Jul 19 04:27:36 CDT 2016
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
---
dlls/wininet/http.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c
index 2c62d97..c4cf66b 100644
--- a/dlls/wininet/http.c
+++ b/dlls/wininet/http.c
@@ -2921,6 +2921,7 @@ static DWORD set_content_length(http_request_t *request)
!strcmpiW(encoding, szChunked))
{
chunked_stream_t *chunked_stream;
+ DWORD res;
chunked_stream = heap_alloc(sizeof(*chunked_stream));
if(!chunked_stream)
@@ -2935,6 +2936,12 @@ static DWORD set_content_length(http_request_t *request)
memcpy(chunked_stream->buf, request->read_buf+request->read_pos, request->read_size);
chunked_stream->buf_size = request->read_size;
request->read_size = request->read_pos = 0;
+
+ res = start_next_chunk(chunked_stream, request);
+ if (res != ERROR_SUCCESS) {
+ heap_free(chunked_stream);
+ return res;
+ }
}
request->data_stream = &chunked_stream->data_stream;
--
2.8.1
More information about the wine-patches
mailing list