From da49d918d6f54c8d0446224f2f3d71d6d7e6f2a9 Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Thu, 5 Feb 2026 10:58:10 +0800 Subject: [PATCH] use close, not shutdown on BSD/Mac --- src/TestHTTPServer.zig | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/TestHTTPServer.zig b/src/TestHTTPServer.zig index 19c5bbc9..85abaf06 100644 --- a/src/TestHTTPServer.zig +++ b/src/TestHTTPServer.zig @@ -41,9 +41,10 @@ pub fn deinit(self: *TestHTTPServer) void { pub fn stop(self: *TestHTTPServer) void { self.shutdown.store(true, .release); if (self.listener) |*listener| { - // Use shutdown to unblock accept(). On Linux this causes accept to - // return error.SocketNotListening. close() alone doesn't interrupt accept(). - std.posix.shutdown(listener.stream.handle, .recv) catch {}; + switch (@import("builtin").target.os.tag) { + .linux => std.posix.shutdown(listener.stream.handle, .recv) catch {}, + else => std.posix.close(listener.stream.handle), + } } }