mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
[Fizz] Don't double replay elements when it's the postpone point (#27440)
The `resumeElement` function wasn't actually doing the correct thing because it was resuming the element itself but what the child slot means is that we're supposed to resume in the direct child of the element. This is difficult to check for since it's all the possible branches that the element can render into, so instead we just check this in renderNode. It means the hottest path always checks the task which is unfortunate. And also, resuming using the correct nextSegmentId. Fixes two bugs surfaced by this test. --------- Co-authored-by: Josh Story <josh.c.story@gmail.com> DiffTrain build for commit https://github.com/facebook/react/commit/a6ed60a8eb0626e5f84d0bdbb62c0b61219150d3.
This commit is contained in:
+1
-1
@@ -23997,7 +23997,7 @@ function createFiberRoot(
|
||||
return root;
|
||||
}
|
||||
|
||||
var ReactVersion = "18.3.0-canary-c7ba8c098-20230929";
|
||||
var ReactVersion = "18.3.0-canary-a6ed60a8e-20230929";
|
||||
|
||||
// Might add PROFILE later.
|
||||
|
||||
|
||||
+2
-2
@@ -8623,7 +8623,7 @@ var devToolsConfig$jscomp$inline_1030 = {
|
||||
throw Error("TestRenderer does not support findFiberByHostInstance()");
|
||||
},
|
||||
bundleType: 0,
|
||||
version: "18.3.0-canary-c7ba8c098-20230929",
|
||||
version: "18.3.0-canary-a6ed60a8e-20230929",
|
||||
rendererPackageName: "react-test-renderer"
|
||||
};
|
||||
var internals$jscomp$inline_1229 = {
|
||||
@@ -8654,7 +8654,7 @@ var internals$jscomp$inline_1229 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-canary-c7ba8c098-20230929"
|
||||
reconcilerVersion: "18.3.0-canary-a6ed60a8e-20230929"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1230 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
|
||||
+2
-2
@@ -9049,7 +9049,7 @@ var devToolsConfig$jscomp$inline_1072 = {
|
||||
throw Error("TestRenderer does not support findFiberByHostInstance()");
|
||||
},
|
||||
bundleType: 0,
|
||||
version: "18.3.0-canary-c7ba8c098-20230929",
|
||||
version: "18.3.0-canary-a6ed60a8e-20230929",
|
||||
rendererPackageName: "react-test-renderer"
|
||||
};
|
||||
var internals$jscomp$inline_1270 = {
|
||||
@@ -9080,7 +9080,7 @@ var internals$jscomp$inline_1270 = {
|
||||
scheduleRoot: null,
|
||||
setRefreshHandler: null,
|
||||
getCurrentFiber: null,
|
||||
reconcilerVersion: "18.3.0-canary-c7ba8c098-20230929"
|
||||
reconcilerVersion: "18.3.0-canary-a6ed60a8e-20230929"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1271 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ if (
|
||||
}
|
||||
"use strict";
|
||||
|
||||
var ReactVersion = "18.3.0-canary-c7ba8c098-20230929";
|
||||
var ReactVersion = "18.3.0-canary-a6ed60a8e-20230929";
|
||||
|
||||
// ATTENTION
|
||||
// When adding new symbols to this file,
|
||||
|
||||
+1
-1
@@ -616,4 +616,4 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactCurrentDispatcher.current.useTransition();
|
||||
};
|
||||
exports.version = "18.3.0-canary-c7ba8c098-20230929";
|
||||
exports.version = "18.3.0-canary-a6ed60a8e-20230929";
|
||||
|
||||
+1
-1
@@ -619,7 +619,7 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactCurrentDispatcher.current.useTransition();
|
||||
};
|
||||
exports.version = "18.3.0-canary-c7ba8c098-20230929";
|
||||
exports.version = "18.3.0-canary-a6ed60a8e-20230929";
|
||||
|
||||
/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
|
||||
if (
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
c7ba8c098889b6dc47fa9c807bbba3975a658584
|
||||
a6ed60a8eb0626e5f84d0bdbb62c0b61219150d3
|
||||
|
||||
Reference in New Issue
Block a user