]> gitweb.ps.run Git - zighttp/commitdiff
make reading from socket a bit more reliable
authorPatrick <patrick.schoenberger@posteo.de>
Sun, 16 Mar 2025 16:26:20 +0000 (17:26 +0100)
committerPatrick <patrick.schoenberger@posteo.de>
Sun, 16 Mar 2025 16:26:20 +0000 (17:26 +0100)
src/http.zig

index bc8f3b1b9a8bc0e6b065c0f17382922e8e4db9c5..c14f16dec2dbaab931ba2c952ad1a7054996132f 100644 (file)
@@ -67,7 +67,13 @@ pub const Server = struct {
                 var closed = false;
                 var req = Request{ .fd = ready_socket };
 
-                const read = posix.read(ready_socket, buf) catch 0;
+                var read: usize = 0;
+                while (true) {
+                    const newly_read = posix.read(ready_socket, buf[read..]) catch 0;
+                    read += newly_read;
+                    if (newly_read == 0)
+                        break;
+                }
                 if (read == 0) {
                     closed = true;
                 } else {