Skip to content

Commit 5340a00

Browse files
hoxyqfacebook-github-bot
authored andcommitted
Define isProfiling option when Fusebox is used in Production mode (#52320)
Summary: Pull Request resolved: #52320 # Changelog [Internal] We are gating `__RCTProfileIsProfiling` global definition under this `isProfiling` option - [1]. Reviewed By: vzaidman Differential Revision: D77315833 fbshipit-source-id: f71175a573aa6d77c16a657475c59820f9830aa6
1 parent b8b79a3 commit 5340a00

File tree

2 files changed

+9
-2
lines changed
  • packages/react-native

2 files changed

+9
-2
lines changed

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ import com.facebook.react.bridge.queue.ReactQueueConfigurationImpl
4040
import com.facebook.react.bridge.queue.ReactQueueConfigurationSpec
4141
import com.facebook.react.common.annotations.FrameworkAPI
4242
import com.facebook.react.common.annotations.UnstableReactNativeAPI
43+
import com.facebook.react.devsupport.InspectorFlags.getIsProfilingBuild
4344
import com.facebook.react.devsupport.StackTraceHelper
4445
import com.facebook.react.devsupport.interfaces.DevSupportManager
4546
import com.facebook.react.fabric.ComponentFactory
@@ -130,7 +131,10 @@ internal class ReactInstance(
130131
context, jsTimerExecutor, ReactChoreographer.getInstance(), devSupportManager)
131132

132133
// Notify JS if profiling is enabled
133-
val isProfiling = BuildConfig.ENABLE_PERFETTO || Systrace.isTracing(Systrace.TRACE_TAG_REACT)
134+
val isProfiling =
135+
BuildConfig.ENABLE_PERFETTO ||
136+
Systrace.isTracing(Systrace.TRACE_TAG_REACT) ||
137+
getIsProfilingBuild()
134138

135139
mHybridData =
136140
initHybrid(

packages/react-native/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
#import <ReactCommon/RCTTurboModuleManager.h>
3636
#import <ReactCommon/RuntimeExecutor.h>
3737
#import <cxxreact/ReactMarker.h>
38+
#import <jsinspector-modern/InspectorFlags.h>
3839
#import <jsinspector-modern/ReactCdp.h>
3940
#import <jsireact/JSIExecutor.h>
4041
#import <react/featureflags/ReactNativeFeatureFlags.h>
@@ -406,8 +407,10 @@ - (void)_start
406407
// DisplayLink is used to call timer callbacks.
407408
_displayLink = [RCTDisplayLink new];
408409

410+
auto &inspectorFlags = jsinspector_modern::InspectorFlags::getInstance();
409411
ReactInstance::JSRuntimeFlags options = {
410-
.isProfiling = false, .runtimeDiagnosticFlags = [RCTInstanceRuntimeDiagnosticFlags() UTF8String]};
412+
.isProfiling = inspectorFlags.getIsProfilingBuild(),
413+
.runtimeDiagnosticFlags = [RCTInstanceRuntimeDiagnosticFlags() UTF8String]};
411414
_reactInstance->initializeRuntime(options, [=](jsi::Runtime &runtime) {
412415
__strong __typeof(self) strongSelf = weakSelf;
413416
if (!strongSelf) {

0 commit comments

Comments
 (0)