Skip to content

Commit 2cb1445

Browse files
mdvaccafacebook-github-bot
authored andcommitted
Fix UnsafeDereference: Replace !! with requireNotNull
Summary: Fixed UnsafeDereference lint errors in BridgelessCatalystInstance.kt. Replaced unsafe !! operator with requireNotNull() for: - javaScriptContextHolder - jsCallInvokerHolder - reactQueueConfiguration This provides better error messages when null values are encountered. changelog: [internal] internal Reviewed By: alanleedev Differential Revision: D91731458
1 parent 9f3ae8b commit 2cb1445

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

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

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,16 @@ internal class BridgelessCatalystInstance(private val reactHost: ReactHostImpl)
9797

9898
@get:Deprecated("Deprecated in Java")
9999
override val javaScriptContextHolder: JavaScriptContextHolder
100-
get() = reactHost.javaScriptContextHolder!!
100+
get() =
101+
requireNotNull(reactHost.javaScriptContextHolder) {
102+
"javaScriptContextHolder is not available"
103+
}
101104

102105
@Suppress("INAPPLICABLE_JVM_NAME")
103106
@get:Deprecated("Deprecated in Java")
104107
@get:JvmName("getJSCallInvokerHolder") // This is needed to keep backward compatibility
105108
override val jsCallInvokerHolder: CallInvokerHolder
106-
get() = reactHost.jsCallInvokerHolder!!
109+
get() = requireNotNull(reactHost.jsCallInvokerHolder) { "jsCallInvokerHolder is not available" }
107110

108111
override val nativeMethodCallInvokerHolder: NativeMethodCallInvokerHolder
109112
get() =
@@ -124,7 +127,10 @@ internal class BridgelessCatalystInstance(private val reactHost: ReactHostImpl)
124127
get() = reactHost.nativeModules
125128

126129
override val reactQueueConfiguration: ReactQueueConfiguration
127-
get() = reactHost.reactQueueConfiguration!!
130+
get() =
131+
requireNotNull(reactHost.reactQueueConfiguration) {
132+
"reactQueueConfiguration is not available"
133+
}
128134

129135
override val runtimeExecutor: RuntimeExecutor?
130136
get() = reactHost.runtimeExecutor

0 commit comments

Comments
 (0)