From d3afd465f3d08e56a2b00617921ab7159bde7d97 Mon Sep 17 00:00:00 2001 From: "Jeong, YunWon" <69878+youknowone@users.noreply.github.com> Date: Wed, 31 Dec 2025 17:52:24 +0900 Subject: [PATCH] fix concurrent socket close (#6612) --- crates/stdlib/src/socket.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/crates/stdlib/src/socket.rs b/crates/stdlib/src/socket.rs index a37a4fd24..ea5f39cb4 100644 --- a/crates/stdlib/src/socket.rs +++ b/crates/stdlib/src/socket.rs @@ -2107,9 +2107,9 @@ mod _socket { #[pymethod] fn close(&self) -> io::Result<()> { - let sock = self.detach(); - if sock != INVALID_SOCKET as i64 { - close_inner(sock as RawSocket)?; + let sock = self.sock.write().take(); + if let Some(sock) = sock { + close_inner(into_sock_fileno(sock))?; } Ok(()) }