File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -62,9 +62,13 @@ def secure(self, socket : socket.socket) -> ssl.SSLSocket:
6262
6363 def __call__ (self , timeout = None ):
6464 s = socket .socket (* self .socket_create )
65- s .settimeout (float (timeout ) if timeout is not None else None )
66- s .connect (self .socket_connect )
67- s .settimeout (None )
65+ try :
66+ s .settimeout (float (timeout ) if timeout is not None else None )
67+ s .connect (self .socket_connect )
68+ s .settimeout (None )
69+ except Exception :
70+ s .close ()
71+ raise
6872 return s
6973
7074 def __init__ (self ,
@@ -102,12 +106,12 @@ def find_available_port(
102106 s = socket .socket (address_family , socket .SOCK_STREAM ,)
103107 try :
104108 s .bind (('localhost' , port ))
109+ s .close ()
105110 except socket .error as e :
111+ s .close ()
106112 if e .errno in (errno .EACCES , errno .EADDRINUSE , errno .EINTR ):
107113 # try again
108114 continue
109- finally :
110- s .close ()
111115 break
112116 else :
113117 port = None
You can’t perform that action at this time.
0 commit comments