Skip to content

Commit 2e7cef5

Browse files
committed
Resolve shell when a replay task errors
1 parent 352f0b6 commit 2e7cef5

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

packages/react-dom/src/__tests__/ReactDOMFizzStaticBrowser-test.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -996,6 +996,11 @@ describe('ReactDOMFizzStaticBrowser', () => {
996996
return children;
997997
}
998998

999+
const lazySpan = React.lazy(async () => {
1000+
await 0;
1001+
return {default: <span />};
1002+
})
1003+
9991004
function App() {
10001005
const children = (
10011006
<Suspense fallback="Loading...">
@@ -1013,7 +1018,7 @@ describe('ReactDOMFizzStaticBrowser', () => {
10131018
</div>
10141019
</Suspense>
10151020
) : (
1016-
<span />
1021+
lazySpan
10171022
)}
10181023
</div>
10191024
</>

packages/react-server/src/ReactFizzServer.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3464,6 +3464,12 @@ function retryReplayTask(request: Request, task: ReplayTask): void {
34643464
task.replay.nodes,
34653465
task.replay.slots,
34663466
);
3467+
request.pendingRootTasks--;
3468+
if (request.pendingRootTasks === 0) {
3469+
request.onShellError = noop;
3470+
const onShellReady = request.onShellReady;
3471+
onShellReady();
3472+
}
34673473
request.allPendingTasks--;
34683474
if (request.allPendingTasks === 0) {
34693475
const onAllReady = request.onAllReady;

0 commit comments

Comments
 (0)