Fix incorrect use of NoLanes in executionContext check (#33170)

## Summary

This PR fixes a likely incorrect condition in the
`scheduleUpdateOnFiber` function inside `ReactFiberWorkLoop.js`.

Previously, the code checked:

```js
(executionContext & RenderContext) !== NoLanes
````

However, `NoLanes` is part of the lane priority system, not the
execution context flags. The intent here seems to be to detect whether
the current execution context includes `RenderContext`, which should be
compared against `NoContext`, not `NoLanes`.

This fix replaces `NoLanes` with `NoContext` for semantic correctness
and consistency with other checks throughout the codebase.

**Fixes
[[#33169](https://github.com/facebook/react/issues/33169)](https://github.com/facebook/react/issues/33169)**

---

## How did you test this change?

I ran the following commands to validate correctness and ensure nothing
was broken:

* `yarn lint`
* `yarn linc`
* `yarn test`
* `yarn test --prod`
* `yarn flow`
* `yarn prettier`

All checks passed. Since this is a minor internal logic fix and doesn't
change public behavior or APIs, no additional tests are necessary at
this time.
This commit is contained in:
0xFango
2025-05-22 22:02:39 -04:00
committed by GitHub
parent 3e9db65fc3
commit bfaeb4a461
+1 -1
View File
@@ -908,7 +908,7 @@ export function scheduleUpdateOnFiber(
markRootUpdated(root, lane);
if (
(executionContext & RenderContext) !== NoLanes &&
(executionContext & RenderContext) !== NoContext &&
root === workInProgressRoot
) {
// This update was dispatched during the render phase. This is a mistake