react-native-ios-context-menu
react-native-ios-context-menu copied to clipboard
Crash in RNIUtilitiesManager.swift file
Description
A lot of our users experience such crash right on application start when the list of items with Context menu becomes visible:
Crashed: com.apple.main-thread
0 libswiftCore.dylib 0x390994 swift::TargetMetadataswift::InProcess::getTypeContextDescriptor() const + 4
1 libswiftCore.dylib 0x3f76b8 getContextDescriptor(swift::TargetMetadataswift::InProcess const*) + 36
2 libswiftCore.dylib 0x3f7bf4 swift_conformsToProtocolMaybeInstantiateSuperclasses(swift::TargetMetadataswift::InProcess const*, swift::TargetProtocolDescriptorswift::InProcess const*, bool) + 932
3 libswiftCore.dylib 0x3f6b48 swift_conformsToProtocolCommon + 136
4 libswiftCore.dylib 0x39a9f0 swift::_conformsToProtocol(swift::OpaqueValue const*, swift::TargetMetadataswift::InProcess const*, swift::TargetProtocolDescriptorRefswift::InProcess, swift::TargetWitnessTableswift::InProcess const**) + 60
5 libswiftCore.dylib 0x3a2be4 _conformsToProtocols(swift::OpaqueValue const*, swift::TargetMetadataswift::InProcess const*, swift::TargetExistentialTypeMetadataswift::InProcess const*, swift::TargetWitnessTableswift::InProcess const**) + 160
6 libswiftCore.dylib 0x3a2684 tryCastToExistentialMetatype(swift::OpaqueValue*, swift::TargetMetadataswift::InProcess const*, swift::OpaqueValue*, swift::TargetMetadataswift::InProcess const*, swift::TargetMetadataswift::InProcess const*&, swift::TargetMetadataswift::InProcess const*&, bool, bool) + 292
7 libswiftCore.dylib 0x3a0068 tryCast(swift::OpaqueValue*, swift::TargetMetadataswift::InProcess const*, swift::OpaqueValue*, swift::TargetMetadataswift::InProcess const*, swift::TargetMetadataswift::InProcess const*&, swift::TargetMetadataswift::InProcess const*&, bool, bool) + 992
8 libswiftCore.dylib 0x3a040c tryCast(swift::OpaqueValue*, swift::TargetMetadataswift::InProcess const*, swift::OpaqueValue*, swift::TargetMetadataswift::InProcess const*, swift::TargetMetadataswift::InProcess const*&, swift::TargetMetadataswift::InProcess const*&, bool, bool) + 1924
9 libswiftCore.dylib 0x39fb14 swift_dynamicCast + 208
10 MyApp 0x699f0 closure #1 in Array<A>.getClasses<A>(ofType:) + 48 (Array+AnyClass.swift:48)
11 MyApp 0x698f0 Array<A>.getClasses<A>(ofType:) + 47 (Array+AnyClass.swift:47)
12 MyApp 0x63dc4c RNIUtilitiesManager.init() + 24 (RNIUtilitiesManager.swift:24)
13 MyApp 0x63d9c4 one-time initialization function for shared + 15 (RNIUtilitiesManager.swift:15)
14 libdispatch.dylib 0x3dd4 _dispatch_client_callout + 20
15 libdispatch.dylib 0x5654 _dispatch_once_callout + 32
16 MyApp 0x63d91c one-time initialization function for RNIUtilitiesManagerShared + 15 (RNIUtilitiesManager.swift:15)
17 libdispatch.dylib 0x3dd4 _dispatch_client_callout + 20
18 libdispatch.dylib 0x5654 _dispatch_once_callout + 32
19 MyApp 0x63e310 closure #1 in closure #1 in RNIUtilitiesModule.definition() + 11 (RNIUtilitiesManager.swift:11)
20 MyApp 0x35634 thunk for @escaping @callee_guaranteed () -> () + 4370601524 (
Looks like the problem is in the react-native-ios-utilities/ios/Sources/RNIUtilitiesModule/RNIUtilitiesManager.swift on line 24:
let singletonClasses = ClassRegistry.allClasses.getClasses(ofType: Singleton.Type.self);