diff --git a/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm b/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm index 06f79b844af..3c6648d8fc3 100644 --- a/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +++ b/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm @@ -59,8 +59,13 @@ static std::shared_ptr const constructCoordinator( auto moduleName = moduleNameFromComponentName(componentName); Class module = NSClassFromString(RCTNSStringFromString(moduleName)); assert(module); - RCTBridge *bridge = (RCTBridge *)unwrapManagedObjectWeakly(contextContainer->at>("Bridge")); - RCTComponentData *componentData = [[RCTComponentData alloc] initWithManagerClass:module bridge:bridge]; + auto optionalBridge = contextContainer->find>("Bridge"); + RCTBridge *bridge; + if (optionalBridge) { + bridge = unwrapManagedObjectWeakly(optionalBridge.value()); + } + RCTComponentData *componentData = [[RCTComponentData alloc] initWithManagerClass:module + bridge:bridge]; return wrapManagedObject([[RCTLegacyViewManagerInteropCoordinator alloc] initWithComponentData:componentData bridge:bridge]); }