naett.c

Tiny cross-platform HTTP / HTTPS client library in C.
git clone git://git.finwo.net/lib/naett.c
Log | Files | Refs | README | LICENSE

commit a34474ddb16f497f7c2f44dc6b24a4a719a816b6
parent b55f3e04cf2c1e404957f41d06fef082c2137718
Author: Erik Agsjö <erik.agsjo@gmail.com>
Date:   Mon, 31 Jul 2023 15:26:33 +0200

Amalgamation

Diffstat:
Mnaett.c | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/naett.c b/naett.c @@ -831,7 +831,6 @@ static void* curlWorker(void* data) { int bytesRead = read(handleReadFD, newHandle.buf, sizeof(newHandle.buf) - newHandlePos); if (bytesRead > 0) { newHandlePos += bytesRead; - res->totalBytesRead += bytesRead; } if (newHandlePos == sizeof(newHandle.buf)) { curl_multi_add_handle(mc, newHandle.handle); @@ -884,7 +883,9 @@ static size_t readCallback(char* buffer, size_t size, size_t numItems, void* use static size_t writeCallback(char* ptr, size_t size, size_t numItems, void* userData) { InternalResponse* res = (InternalResponse*)userData; InternalRequest* req = res->request; - return req->options.bodyWriter(ptr, size * numItems, req->options.bodyWriterData); + size_t bytesWritten = req->options.bodyWriter(ptr, size * numItems, req->options.bodyWriterData); + req->totalBytesRead += bytesWritten; + return bytesWritten; } #define METHOD(A, B, C) (((A) << 16) | ((B) << 8) | (C))