File tree 1 file changed +18
-9
lines changed
1 file changed +18
-9
lines changed Original file line number Diff line number Diff line change @@ -279,18 +279,27 @@ export function createRenderStream<
279
279
return stream . renders . length
280
280
} ,
281
281
async peekRender ( options : NextRenderOptions = { } ) {
282
- if ( iteratorPosition < stream . renders . length ) {
283
- const peekedRender = stream . renders [ iteratorPosition ]
282
+ try {
283
+ if ( iteratorPosition < stream . renders . length ) {
284
+ const peekedRender = stream . renders [ iteratorPosition ]
284
285
285
- if ( peekedRender . phase === 'snapshotError' ) {
286
- throw peekedRender . error
287
- }
286
+ if ( peekedRender . phase === 'snapshotError' ) {
287
+ throw peekedRender . error
288
+ }
288
289
289
- return peekedRender
290
+ return peekedRender
291
+ }
292
+ return await stream
293
+ . waitForNextRender ( options )
294
+ . catch ( rethrowWithCapturedStackTrace ( stream . peekRender ) )
295
+ } finally {
296
+ /** drain microtask queue */
297
+ await new Promise < void > ( resolve => {
298
+ setTimeout ( ( ) => {
299
+ resolve ( )
300
+ } , 0 )
301
+ } )
290
302
}
291
- return stream
292
- . waitForNextRender ( options )
293
- . catch ( rethrowWithCapturedStackTrace ( stream . peekRender ) )
294
303
} ,
295
304
takeRender : markAssertable ( async function takeRender (
296
305
options : NextRenderOptions = { } ,
You can’t perform that action at this time.
0 commit comments