diff --git a/kernel/trunk/network/socket.inc b/kernel/trunk/network/socket.inc index 840bc5b434..69ea584d7e 100644 --- a/kernel/trunk/network/socket.inc +++ b/kernel/trunk/network/socket.inc @@ -759,12 +759,14 @@ socket_close: cmp [eax + SOCKET.Protocol], IP_PROTO_TCP jne .free test [eax + SOCKET.state], SS_ISCONNECTED - jz .free + jz @f test [eax + SOCKET.state], SS_ISDISCONNECTING - jnz .free + jnz @f call tcp_disconnect - test eax, eax - jz .end +@@: + ret +; test eax, eax +; jz .end .free: call socket_free .end: