From 6f2cfc118701b59d96862199204aef7834f9db86 Mon Sep 17 00:00:00 2001 From: Trumeet Date: Tue, 9 Aug 2022 18:46:45 -0700 Subject: fix(libacron/acronc/helloworld): ac_receive: 'read' should be the delta value of bytes read in the call, not the absolute position Also clearify that 'read' is undefined if the function fails. --- client/acronc/handler_socket.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'client/acronc/handler_socket.c') diff --git a/client/acronc/handler_socket.c b/client/acronc/handler_socket.c index c0a9923..8a2dc4d 100644 --- a/client/acronc/handler_socket.c +++ b/client/acronc/handler_socket.c @@ -128,7 +128,7 @@ static void on_read(uv_stream_t *tcp, ssize_t nread, const uv_buf_t *buf) { size_t pos = 0; size_t read = 0; bool again = false; - while (read < nread || again) { + while (pos < nread || again) { if (again) { LOGD("Clearing backlog."); r = ac_receive(ac_conn, NULL, 0, 0, &obj, NULL); @@ -146,6 +146,7 @@ static void on_read(uv_stream_t *tcp, ssize_t nread, const uv_buf_t *buf) { free(buf->base); return; } + LOGDV("Read %u / %u bytes.", pos, nread); if (!ready) { enum ac_connection_state state; -- cgit v1.2.3