@@ -352,7 +352,7 @@ export class StateMachine {
352
352
const message = request . message ;
353
353
const buffer = new BufferPool ( ) ;
354
354
355
- const netSocket : net . Socket = new net . Socket ( ) ;
355
+ let netSocket : net . Socket ;
356
356
let socket : tls . TLSSocket ;
357
357
358
358
function destroySockets ( ) {
@@ -388,26 +388,31 @@ export class StateMachine {
388
388
}
389
389
}
390
390
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
-
401
391
let abortListener ;
402
392
403
393
try {
404
394
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
+
405
408
const netSocketOptions = {
406
409
...socketOptions ,
407
410
host : this . options . proxyOptions . proxyHost ,
408
411
port : this . options . proxyOptions . proxyPort || 1080
409
412
} ;
413
+
410
414
netSocket . connect ( netSocketOptions ) ;
415
+
411
416
await willConnect ;
412
417
413
418
try {
0 commit comments