Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.

Crash interacting with annotation callouts with VoiceOver enabled — -[NSObject(UIStorage) accessibilityPerformAction:withValue:] #1494

Closed
1ec5 opened this issue May 10, 2015 · 1 comment · Fixed by #1496
Labels
crash iOS Mapbox Maps SDK for iOS

Comments

@1ec5
Copy link
Contributor

1ec5 commented May 10, 2015

Easily reproducible in iOS 8.3 on an iPhone 6:

  1. Enable VoiceOver.
  2. Tap an annotation’s callout view to focus on it. (It isn’t possible to interact with the annotation pin, due to Compass, user dot, annotations are inaccessible on iOS #1493.)
  3. Tap the callout view four times in short succession.

Usually, the map behind the callout view zooms in, but the focus ring remains in place. Double-tapping at this point triggers a crash:

https://rink.hockeyapp.net/manage/apps/163490/app_versions/22/crash_reasons/34511875

Exception Type:  SIGSEGV
Exception Codes: SEGV_ACCERR at 0x10
Crashed Thread:  0

Application Specific Information:
objc_msgSend() selector name: performSelector:withObject:withObject:

Thread 0 Crashed:
0   libobjc.A.dylib                      0x0000000195d3fbd0 objc_msgSend + 16
1   UIKit                                0x0000000188f7d404 -[UIApplication sendAction:to:from:forEvent:] + 92
2   UIKit                                0x0000000188f664e0 -[UIControl _sendActionsForEvents:withEvent:] + 608
3   UIKit                                0x000000018290cad8 0x1828dc000 + 199384
4   UIAccessibility                      0x0000000192290904 -[NSObject(UIStorage) accessibilityPerformAction:withValue:] + 1724
5   UIAccessibility                      0x000000019227237c _performActionCallback + 76
6   AXRuntime                            0x000000018a0a8368 _AXXMIGPerformAction + 96
7   AXRuntime                            0x000000018a0a3668 _XPerformAction + 208
8   AXRuntime                            0x000000018a0af0c4 mshMIGPerform + 268
…

The stack has nothing specific to Mapbox GL in it, but maybe the bug is that Mapbox GL isn’t somehow refreshing the callout view’s accessibility info when zooming in causes that view to move.

@1ec5 1ec5 added iOS Mapbox Maps SDK for iOS crash labels May 10, 2015
@1ec5
Copy link
Contributor Author

1ec5 commented May 10, 2015

It might be necessary to update the callout view’s accessibilityActivationPoint when panning or zooming.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
crash iOS Mapbox Maps SDK for iOS
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants