From 93b4ec3472afd9e22e4b62ac96ef49df02e6a48f Mon Sep 17 00:00:00 2001 From: David Vacca Date: Fri, 23 Feb 2024 02:42:20 -0800 Subject: [PATCH] Validate textAttributeProps is created with a non-null textAttributes map (#42932) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/42932 Validate textAttributeProps is created with a non-null textAttributes map changelog: [internal] internal Reviewed By: rshest Differential Revision: D53558784 fbshipit-source-id: 2f7521a7f0a1cfdf67c0ab8ea0048e7f5da365b8 --- .../react/views/text/fragments/BridgeTextFragment.kt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/BridgeTextFragment.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/BridgeTextFragment.kt index 53d1105e6ea..45ae17b05a8 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/BridgeTextFragment.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/text/fragments/BridgeTextFragment.kt @@ -15,8 +15,12 @@ import com.facebook.react.views.text.TextAttributeProps /** A [TextFragment] implementation backed by a a [ReadableMap] */ internal class BridgeTextFragment(private val fragment: ReadableMap) : TextFragment { override val textAttributeProps: TextAttributeProps - get() = - TextAttributeProps.fromReadableMap(ReactStylesDiffMap(fragment.getMap("textAttributes"))) + get() { + val textAttributesMap = + fragment.getMap("textAttributes") + ?: throw IllegalStateException("Missing required field `textAttributes`") + return TextAttributeProps.fromReadableMap(ReactStylesDiffMap(textAttributesMap)) + } override val string: String? get() = fragment.getString("string")