fix: restore success-path server_sock.close() before rpc_thread.join()
PR #568 moved the close entirely to the finally block, but the success-path close is needed to break the RPC thread out of accept() immediately. Without it, rpc_thread.join(3) may block for up to 3 seconds if the child process never connected. The finally-block close remains as a safety net for the exception/error path (the actual fd leak fix).
This commit is contained in:
@@ -511,6 +511,7 @@ def execute_code(
|
||||
duration = round(time.monotonic() - exec_start, 2)
|
||||
|
||||
# Wait for RPC thread to finish
|
||||
server_sock.close() # break accept() so thread exits promptly
|
||||
rpc_thread.join(timeout=3)
|
||||
|
||||
# Build response
|
||||
|
||||
Reference in New Issue
Block a user