@@ -352,7 +352,7 @@ export class StateMachine {
352352 const message = request . message ;
353353 const buffer = new BufferPool ( ) ;
354354
355- const netSocket : net . Socket = new net . Socket ( ) ;
355+ let netSocket : net . Socket ;
356356 let socket : tls . TLSSocket ;
357357
358358 function destroySockets ( ) {
@@ -388,26 +388,31 @@ export class StateMachine {
388388 }
389389 }
390390
391- const {
392- promise : willConnect ,
393- reject : rejectOnNetSocketError ,
394- resolve : resolveOnNetSocketConnect
395- } = promiseWithResolvers < void > ( ) ;
396- netSocket
397- . once ( 'error' , err => rejectOnNetSocketError ( onerror ( err ) ) )
398- . once ( 'close' , ( ) => rejectOnNetSocketError ( onclose ( ) ) )
399- . once ( 'connect' , ( ) => resolveOnNetSocketConnect ( ) ) ;
400-
401391 let abortListener ;
402392
403393 try {
404394 if ( this . options . proxyOptions && this . options . proxyOptions . proxyHost ) {
395+ netSocket = new net . Socket ( ) ;
396+
397+ const {
398+ promise : willConnect ,
399+ reject : rejectOnNetSocketError ,
400+ resolve : resolveOnNetSocketConnect
401+ } = promiseWithResolvers < void > ( ) ;
402+
403+ netSocket
404+ . once ( 'error' , err => rejectOnNetSocketError ( onerror ( err ) ) )
405+ . once ( 'close' , ( ) => rejectOnNetSocketError ( onclose ( ) ) )
406+ . once ( 'connect' , ( ) => resolveOnNetSocketConnect ( ) ) ;
407+
405408 const netSocketOptions = {
406409 ...socketOptions ,
407410 host : this . options . proxyOptions . proxyHost ,
408411 port : this . options . proxyOptions . proxyPort || 1080
409412 } ;
413+
410414 netSocket . connect ( netSocketOptions ) ;
415+
411416 await willConnect ;
412417
413418 try {
0 commit comments