treesummaryrefslogcommitdiff
diff options
context:
space:
mode:
authorPatrick2025-03-16 17:26:20 +0100
committerPatrick2025-03-16 17:26:20 +0100
commit9a88fec57f4fa87cae6769ee0f992fbf00b8becd (patch)
tree28a771293de9e8401c2ef11ad9bada395a826b8d
parent39fa56e5ad7e04a5632082af516f4a2493ed1948 (diff)
downloadzighttp-9a88fec57f4fa87cae6769ee0f992fbf00b8becd.tar.gz
zighttp-9a88fec57f4fa87cae6769ee0f992fbf00b8becd.zip
make reading from socket a bit more reliable
-rw-r--r--src/http.zig8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/http.zig b/src/http.zig
index bc8f3b1..c14f16d 100644
--- a/src/http.zig
+++ b/src/http.zig
@@ -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 {