From 3a8ccb924268c5f9eeff204c87ba30dc0fe587e2 Mon Sep 17 00:00:00 2001 From: Paul Gofman Date: Fri, 15 Oct 2021 16:59:49 +0300 Subject: [PATCH] winhttp: Process end of read data before sending callback in read_data(). Signed-off-by: Paul Gofman Signed-off-by: Hans Leidekker Signed-off-by: Alexandre Julliard --- dlls/winhttp/request.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/winhttp/request.c b/dlls/winhttp/request.c index c908e26956f..d76edfa71d7 100644 --- a/dlls/winhttp/request.c +++ b/dlls/winhttp/request.c @@ -1848,6 +1848,7 @@ static DWORD read_data( struct request *request, void *buffer, DWORD size, DWORD done: TRACE( "retrieved %u bytes (%u/%u)\n", bytes_read, request->content_read, request->content_length ); + if (end_of_read_data( request )) finished_reading( request ); if (async) { if (!ret) send_callback( &request->hdr, WINHTTP_CALLBACK_STATUS_READ_COMPLETE, buffer, bytes_read ); @@ -1861,7 +1862,6 @@ done: } if (!ret && read) *read = bytes_read; - if (end_of_read_data( request )) finished_reading( request ); return ret; }