From 5386ecea80e9f52e6f4deaaa7f9237e98be52839 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Sun, 28 Jul 2024 15:04:19 -0700 Subject: [PATCH] Delete removeOutstandingSurfacesOnDestruction flag (#45630) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/45630 removeOutstandingSurfacesOnDestruction is safe to fully release, we are deleting the flag changelog: [internal] internal Reviewed By: sammy-SC Differential Revision: D60142272 fbshipit-source-id: 5e7470d52cfc964b72f0cec7224a234ce9e6c2c4 --- .../react/renderer/scheduler/Scheduler.cpp | 15 +++------------ .../react/renderer/scheduler/Scheduler.h | 5 ----- 2 files changed, 3 insertions(+), 17 deletions(-) diff --git a/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.cpp b/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.cpp index 3ddd7a7d0cc..3e1ddd68139 100644 --- a/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.cpp +++ b/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.cpp @@ -144,13 +144,6 @@ Scheduler::Scheduler( } uiManager_->setAnimationDelegate(animationDelegate); -#ifdef ANDROID - removeOutstandingSurfacesOnDestruction_ = true; -#else - removeOutstandingSurfacesOnDestruction_ = reactNativeConfig_->getBool( - "react_fabric:remove_outstanding_surfaces_on_destruction_ios"); -#endif - if (ReactNativeFeatureFlags::enableReportEventPaintTime()) { uiManager->registerMountHook(*eventPerformanceLogger_); } @@ -203,11 +196,9 @@ Scheduler::~Scheduler() { surfaceId, [](const ShadowTree& shadowTree) { shadowTree.commitEmptyTree(); }); - // Removing surfaces is gated because it acquires mutex waiting for commits - // in flight; in theory, it can deadlock. - if (removeOutstandingSurfacesOnDestruction_) { - uiManager_->getShadowTreeRegistry().remove(surfaceId); - } + // Removing surfaces acquires mutex waiting for commits in flight; in + // theory, it can deadlock. + uiManager_->getShadowTreeRegistry().remove(surfaceId); } } diff --git a/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.h b/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.h index 3a30ae3cd4c..3977cbc2467 100644 --- a/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.h +++ b/packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.h @@ -141,11 +141,6 @@ class Scheduler final : public UIManagerDelegate { * Must not be nullptr. */ ContextContainer::Shared contextContainer_; - - /* - * Temporary flags. - */ - bool removeOutstandingSurfacesOnDestruction_{false}; }; } // namespace facebook::react