@@ -3182,8 +3182,8 @@ class Connection extends EventEmitter {
3182
3182
this . clearRequestTimer ( ) ;
3183
3183
}
3184
3184
3185
- if ( ! request . canceled && request instanceof Request && request . paused ) {
3186
- await new Promise < void > ( ( resolve , _ ) => {
3185
+ const onCancelOrResume = async ( ) => {
3186
+ return await new Promise < void > ( ( resolve , _ ) => {
3187
3187
const onResume = ( ) => {
3188
3188
request . removeListener ( 'cancel' , onCancel ) ;
3189
3189
request . removeListener ( 'resume' , onResume ) ;
@@ -3201,29 +3201,16 @@ class Connection extends EventEmitter {
3201
3201
request . on ( 'cancel' , onCancel ) ;
3202
3202
request . on ( 'resume' , onResume ) ;
3203
3203
} ) ;
3204
+ } ;
3205
+
3206
+ if ( ! request . canceled && request instanceof Request && request . paused ) {
3207
+ await onCancelOrResume ( ) ;
3204
3208
}
3205
3209
3206
3210
const handler = new RequestTokenHandler ( this , request ) ;
3207
3211
for await ( const token of this . createTokenStreamParser ( message ) ) {
3208
3212
if ( ! request . canceled && request instanceof Request && request . paused ) {
3209
- await new Promise < void > ( ( resolve , _ ) => {
3210
- const onResume = ( ) => {
3211
- request . removeListener ( 'cancel' , onCancel ) ;
3212
- request . removeListener ( 'resume' , onResume ) ;
3213
-
3214
- resolve ( ) ;
3215
- } ;
3216
-
3217
- const onCancel = ( ) => {
3218
- request . removeListener ( 'cancel' , onCancel ) ;
3219
- request . removeListener ( 'resume' , onResume ) ;
3220
-
3221
- resolve ( ) ;
3222
- } ;
3223
-
3224
- request . on ( 'cancel' , onCancel ) ;
3225
- request . on ( 'resume' , onResume ) ;
3226
- } ) ;
3213
+ await onCancelOrResume ( ) ;
3227
3214
}
3228
3215
3229
3216
handler [ token . handlerName ] ( token as any ) ;
0 commit comments