From f7eecc68cbc04eefd7f0c05f8ea3fc67f8dd103a Mon Sep 17 00:00:00 2001 From: Samuel Susla Date: Wed, 24 Feb 2021 01:57:14 -0800 Subject: [PATCH] Nullcheck before dispatching view command Summary: Changelog: [internal] `shadowNodeFromValue` can return nullptr. Let's make sure it returns valid value before dispatching command. Reviewed By: JoshuaGross Differential Revision: D26605350 fbshipit-source-id: eb9a0347c95ba07fd7e9b7ddeca7e6d6011f50ad --- .../react/renderer/uimanager/UIManagerBinding.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp b/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp index c1fa85cab6b..d6e055f1213 100644 --- a/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +++ b/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp @@ -534,11 +534,13 @@ jsi::Value UIManagerBinding::get( jsi::Value const &thisValue, jsi::Value const *arguments, size_t count) noexcept -> jsi::Value { - uiManager->dispatchCommand( - shadowNodeFromValue(runtime, arguments[0]), - stringFromValue(runtime, arguments[1]), - commandArgsFromValue(runtime, arguments[2])); - + auto shadowNode = shadowNodeFromValue(runtime, arguments[0]); + if (shadowNode) { + uiManager->dispatchCommand( + shadowNodeFromValue(runtime, arguments[0]), + stringFromValue(runtime, arguments[1]), + commandArgsFromValue(runtime, arguments[2])); + } return jsi::Value::undefined(); }); }