Skip to content

EXC_BAD_ACCESS Attempted to dereference garbage pointer 0x167f4beb8. #12159

@dwilt

Description

@dwilt

Description

So, this is going to be tough because I don't have exact reproduction steps for this error. We're getting reports into our Bugsnag application of crashes, which we've experienced ourselves, but as I said, are unable to reproduce.

I've tried going through the stacktraces of the bugs, and a lot of them are consistent amongst themselves but there are also different once as well.

Here are the stracktraces:

Error 1:

EXC_BAD_ACCESS Attempted to dereference garbage pointer 0x18. 
    /usr/lib/libobjc.A.dylib objc_msgSend
    Frameworks/CoreFoundation.framework/CoreFoundation -[__NSDictionaryM objectForKey:]
    Frameworks/UIKit.framework/UIKit -[UIKBTree objectForProperty:]
    Frameworks/UIKit.framework/UIKit -[UIKBTree intForProperty:]
    Frameworks/UIKit.framework/UIKit -[UIKBTree displayType]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardLayoutStar setKeyplaneName:]
    AccessibilityBundles/UIKit.axbundle/UIKit -[UIKeyboardLayoutStarAccessibility setKeyplaneName:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardLayoutStar showKeyboardWithInputTraits:screenTraits:splitTraits:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardImpl finishLayoutChangeWithArguments:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardImpl updateLayout]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardImpl updateLayoutIfNecessary]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardImpl setFrame:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboard activate]
    AccessibilityBundles/UIKit.axbundle/UIKit -[UIKeyboardAccessibility activate]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardAutomatic activate]
    Frameworks/UIKit.framework/UIKit -[UIKeyboard setFrame:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboard _didChangeKeyplaneWithContext:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardImpl didMoveToSuperview]
    Frameworks/UIKit.framework/UIKit ___45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke
    Frameworks/UIKit.framework/UIKit -[UIView(Hierarchy) _postMovedFromSuperview:]
    Frameworks/UIKit.framework/UIKit -[UIView(Internal) _addSubview:positioned:relativeTo:]
    Frameworks/UIKit.framework/UIKit -[UIView(Hierarchy) addSubview:]
    Frameworks/UIKit.framework/UIKit -[UIKeyboard activate]
    AccessibilityBundles/UIKit.axbundle/UIKit -[UIKeyboardAccessibility activate]
    Frameworks/UIKit.framework/UIKit -[UIKeyboardAutomatic activate]
    Frameworks/UIKit.framework/UIKit -[UIPeripheralHost(UIKitInternal) _reloadInputViewsForResponder:]
    Frameworks/UIKit.framework/UIKit -[UIResponder(UIResponderInputViewAdditions) reloadInputViews]
    Frameworks/UIKit.framework/UIKit -[UIResponder becomeFirstResponder]
    Frameworks/UIKit.framework/UIKit -[UIView(Hierarchy) becomeFirstResponder]
    Frameworks/UIKit.framework/UIKit -[UITextField becomeFirstResponder]
    GreatJonesStreet-Prod mh_execute_header
    GreatJonesStreet-Prod mh_execute_header
    /usr/lib/system/libdispatch.dylib __dispatch_call_block_and_release
    /usr/lib/system/libdispatch.dylib __dispatch_client_callout
    /usr/lib/system/libdispatch.dylib __dispatch_main_queue_callback_4CF
    Frameworks/CoreFoundation.framework/CoreFoundation ___CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__
    Frameworks/CoreFoundation.framework/CoreFoundation ___CFRunLoopRun
    Frameworks/CoreFoundation.framework/CoreFoundation CFRunLoopRunSpecific
    PrivateFrameworks/GraphicsServices.framework/GraphicsServices GSEventRunModal
    Frameworks/UIKit.framework/UIKit -[UIApplication _run]
    Frameworks/UIKit.framework/UIKit UIApplicationMain
    GreatJonesStreet-Prod mh_execute_header
    /usr/lib/system/libdyld.dylib start

Error 2:

EXC_BAD_ACCESS Attempted to dereference garbage pointer 0x41cf9beb8. 
    /usr/lib/libobjc.A.dylib objc_msgSend
    Frameworks/Foundation.framework/Foundation -[NSObject(NSKeyValueObservingPrivate) _changeValueForKeys:count:maybeOldValuesDict:usingBlock:]
    Frameworks/Foundation.framework/Foundation -[NSObject(NSKeyValueObservingPrivate) _changeValueForKey:key:key:usingBlock:]
    Frameworks/Foundation.framework/Foundation -[NSOperationQueue setMaxConcurrentOperationCount:]
    GreatJonesStreet-Prod mh_execute_header
    GreatJonesStreet-Prod mh_execute_header
    GreatJonesStreet-Prod mh_execute_header
    /usr/lib/system/libdispatch.dylib __dispatch_call_block_and_release
    /usr/lib/system/libdispatch.dylib __dispatch_client_callout
    /usr/lib/system/libdispatch.dylib __dispatch_queue_override_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_root_queue_drain
    /usr/lib/system/libdispatch.dylib __dispatch_worker_thread3
    /usr/lib/system/libsystem_pthread.dylib __pthread_wqthread

Error 3:

EXC_BAD_ACCESS Attempted to dereference garbage pointer 0xae928beb8. 
    main.jsbundle:931:489 y
    [native code] y
    main.jsbundle:145:7008 _renderValidatedComponentWithoutOwnerOrContext
    main.jsbundle:145:7175 _renderValidatedComponent
    main.jsbundle:145:6454 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:143:475 updateChildren
    main.jsbundle:140:988 _reconcilerUpdateChildren
    main.jsbundle:140:1764 _updateChildren
    main.jsbundle:140:1652 updateChildren
    main.jsbundle:120:830 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:143:475 updateChildren
    main.jsbundle:140:988 _reconcilerUpdateChildren
    main.jsbundle:140:1764 _updateChildren
    main.jsbundle:140:1652 updateChildren
    main.jsbundle:120:830 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:143:475 updateChildren
    main.jsbundle:140:988 _reconcilerUpdateChildren
    main.jsbundle:140:1764 _updateChildren
    main.jsbundle:140:1652 updateChildren
    main.jsbundle:120:830 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4634 receiveComponent
    main.jsbundle:135:578 receiveComponent
    main.jsbundle:145:6489 _updateRenderedComponent
    main.jsbundle:145:6254 _performComponentUpdate
    main.jsbundle:145:5531 updateComponent
    main.jsbundle:145:4850 performUpdateIfNecessary
    main.jsbundle:135:768 performUpdateIfNecessary
    main.jsbundle:132:767 l
    main.jsbundle:139:503 perform
    main.jsbundle:139:503 perform
    main.jsbundle:132:2005 B
    [native code] B
    main.jsbundle:139:1142 closeAll
    main.jsbundle:139:590 perform
    main.jsbundle:232:456 batchedUpdates
    main.jsbundle:132:1039 s
    main.jsbundle:239:69 u
    main.jsbundle:239:1050 enqueueSetState
    main.jsbundle:29:323 setState
    main.jsbundle:422:4370 handleChange
    [native code] 
    main.jsbundle:426:734 d
    main.jsbundle:689:1406 
    main.jsbundle:214:236 n
    main.jsbundle:214:1653 
    main.jsbundle:214:236 n
    main.jsbundle:214:493 r
    main.jsbundle:214:610 
    main.jsbundle:212:137 u
    main.jsbundle:212:891 
    main.jsbundle:62:629 callTimer
    main.jsbundle:62:1731 callImmediatesPass
    main.jsbundle:62:1847 callImmediates
    main.jsbundle:60:130 d
    main.jsbundle:60:2249 value
    main.jsbundle:60:1234 
    main.jsbundle:60:130 d
    main.jsbundle:60:1180 value
    [native code] value

Error 4:

EXC_BAD_ACCESS Attempted to dereference garbage pointer 0x12. 
    /usr/lib/libobjc.A.dylib std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, void*>*> std::__1::__hash_table<std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, std::__1::__unordered_map_hasher<unsigned long, std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, objc_references_support::DisguisedPointerHash, true>, std::__1::__unordered_map_equal<unsigned long, std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, objc_references_support::DisguisedPointerEqual, true>, objc_references_support::ObjcAllocator<std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*> > >::find<unsigned long>(unsigned long const&)
    /usr/lib/libobjc.A.dylib __object_remove_assocations
    /usr/lib/libobjc.A.dylib objc_destructInstance
    /usr/lib/libobjc.A.dylib object_dispose
    /usr/lib/system/libxpc.dylib __xpc_dictionary_node_free
    /usr/lib/system/libxpc.dylib __xpc_dictionary_dispose
    /usr/lib/system/libxpc.dylib __xpc_dispose
    Frameworks/Foundation.framework/Foundation -[NSXPCConnection _sendInvocation:withProxy:remoteInterface:withErrorHandler:timeout:userInfo:]
    Frameworks/CoreFoundation.framework/CoreFoundation ____forwarding___
    Frameworks/CoreFoundation.framework/CoreFoundation ___forwarding_prep_0___
    Frameworks/CFNetwork.framework/CFNetwork ___30-[__NSCFURLSessionTask resume]_block_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_call_block_and_release
    /usr/lib/system/libdispatch.dylib __dispatch_client_callout
    /usr/lib/system/libdispatch.dylib __dispatch_queue_serial_drain
    /usr/lib/system/libdispatch.dylib __dispatch_queue_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_queue_override_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_root_queue_drain
    /usr/lib/system/libdispatch.dylib __dispatch_worker_thread3
    /usr/lib/system/libsystem_pthread.dylib __pthread_wqthread

Error 5:

EXC_BAD_ACCESS Attempted to dereference garbage pointer 0x12. 
    /usr/lib/libobjc.A.dylib std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, void*>*> std::__1::__hash_table<std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, std::__1::__unordered_map_hasher<unsigned long, std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, objc_references_support::DisguisedPointerHash, true>, std::__1::__unordered_map_equal<unsigned long, std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*>, objc_references_support::DisguisedPointerEqual, true>, objc_references_support::ObjcAllocator<std::__1::__hash_value_type<unsigned long, objc_references_support::ObjectAssociationMap*> > >::find<unsigned long>(unsigned long const&)
    /usr/lib/libobjc.A.dylib __object_remove_assocations
    /usr/lib/libobjc.A.dylib objc_destructInstance
    /usr/lib/libobjc.A.dylib object_dispose
    /usr/lib/system/libxpc.dylib __xpc_dictionary_dispose
    /usr/lib/system/libxpc.dylib __xpc_dispose
    /usr/lib/system/libxpc.dylib __xpc_connection_mach_event
    /usr/lib/system/libdispatch.dylib __dispatch_client_callout4
    /usr/lib/system/libdispatch.dylib __dispatch_mach_msg_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_queue_serial_drain
    /usr/lib/system/libdispatch.dylib __dispatch_mach_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_queue_serial_drain
    /usr/lib/system/libdispatch.dylib __dispatch_queue_invoke
    /usr/lib/system/libdispatch.dylib __dispatch_root_queue_drain_deferred_item
    /usr/lib/system/libdispatch.dylib __dispatch_kevent_worker_thread
    /usr/lib/system/libsystem_pthread.dylib __pthread_wqthread

Reproduction

No exact reproduction steps that I can explain.

Solution

Figure out where the issues are coming from as the errors don't explain much. Error 3 came from somewhere in main.bundle.js which sounds like a JS related issue but the variable name y doesn't tell me much either and the line numbers are so early on it looks like the react native base code.

Additional Information

  • React Native version: 0.39.0
  • Platform: iOS (
  • Operating System: MacOS

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions