commit 668cb435bcc353962507b49f5ca671c29a5faef7 from: Omar Polo date: Fri Dec 22 07:58:55 2023 UTC http: fix reswriter_write() return value we "wrote" only len(buf) bytes. Also, since res.dst is a dynstream no short writes can happen. commit - 80ace363a700c019ae489c749abb47b50bebe6e8 commit + 668cb435bcc353962507b49f5ca671c29a5faef7 blob - dbc9022927b46e6928381adea2b116b4ba305efa blob + 75bf557bc4b3acff6080e2e13414af8efc3a6e2d --- http/reswriter.ha +++ http/reswriter.ha @@ -62,12 +62,10 @@ fn reswriter_write(s: *io::stream, buf: const []u8) (s }; if (res.chunked) { - let ret = 0z; - - ret += fmt::fprintf(&res.dst, "{:x}\r\n", len(buf))?; - ret += io::write(&res.dst, buf)?; - ret += fmt::fprint(&res.dst, "\r\n")?; - return ret; + fmt::fprintf(&res.dst, "{:x}\r\n", len(buf))?; + io::write(&res.dst, buf)?; + fmt::fprint(&res.dst, "\r\n")?; + return len(buf); } else { return io::write(&res.dst, buf)?; };