From 2b2c69aab1b37ae42a517583a16a30ca2f3532b3 Mon Sep 17 00:00:00 2001 From: Ramanpreet Nara Date: Wed, 10 Mar 2021 15:07:40 -0800 Subject: [PATCH] Prevent TurboModuleManagerDelegate.mHybridData from being dead-code eliminated Summary: mHybridData should have a SuppressWarnings("unsed") annotation on it. Furthermore, we should add a DoNotStrip annotation, to make sure that the HybridData object doesn't get removed. We do the same in TurboModuleManager: https://www.internalfb.com/intern/diffusion/FBS/browsefile/master/xplat/js/react-native-github/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java?commit=5e1cd0c2ed84ff8e718473ff26145733868ebaba&lines=46-48 Changelog: [Internal] Created from Diffusion's 'Open in Editor' feature. Reviewed By: fkgozali Differential Revision: D26958686 fbshipit-source-id: 83c0626c0681966dfcda7f6e4fb4cbeac8340b3f --- .../react/turbomodule/core/TurboModuleManagerDelegate.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java index b744d110dd9..9dcd6126e0c 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java +++ b/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java @@ -9,6 +9,7 @@ package com.facebook.react.turbomodule.core; import androidx.annotation.Nullable; import com.facebook.jni.HybridData; +import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.react.bridge.CxxModuleWrapper; import com.facebook.react.turbomodule.core.interfaces.TurboModule; import com.facebook.soloader.SoLoader; @@ -16,6 +17,8 @@ import java.util.ArrayList; import java.util.List; public abstract class TurboModuleManagerDelegate { + @DoNotStrip + @SuppressWarnings("unused") private final HybridData mHybridData; private static volatile boolean sIsSoLibraryLoaded;