Note: Before bug reporting, please make sure you have tried the latest (alpha) version of BetterTouchTool and that you have already tried to restart your system :-). If you encounter a crash, please attach a crash log from the macOS Console.app from the "User Diagnostic Reports" section.
Describe the bug
Executing a gesture to Zoom an XQuartz based window crashes BetterTouchTool.
Steps to reproduce:
- Bring up BetterTouchTool config window.
- Create gesture (I did custom 4,3,2,1 four fingered gesture, ie, tapping right-hand fingers from pinky to index.)
- Assign it the action 'Zoom Window.'
- With the BetterTouchTool config window still visible on the desktop, execute the action while over an
XQuartz based window. - BetterTouchTool config window disappears, and shortly thereafter a crash log window is displayed.
Affected input device (e.g. MacBook Trackpad, Magic Mouse/Trackpad, Touch Bar, etc.):
MacBook Pro Trackpad
Screenshots
If applicable, add screenshots to help explain your problem. (You can just paste or drag them here)
Device information:
- Type of Mac: MacBook Pro 15", 2018
- macOS version: 10.14.6 (18G2022)
- BetterTouchTool version: 3.346 (1554)
Additional information (e.g. StackTraces, related issues, screenshots, workarounds, etc.):
Partial information from crash window (new user, won't let me include entire text):
Process: BetterTouchTool [95065]
Path: /Applications/BetterTouchTool.app/Contents/MacOS/BetterTouchTool
Identifier: com.hegenberg.BetterTouchTool
Version: 3.346 (1554)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: BetterTouchTool [95065]
User ID: 1786626585
Date/Time: 2020-03-18 17:27:59.403 -0700
OS Version: Mac OS X 10.14.6 (18G2022)
Report Version: 12
Bridge OS Version: 4.2 (17P2551)
Anonymous UUID: 4A89C90A-CC6E-DF8B-2D89-FF02B759C29F
Sleep/Wake UUID: 99D32E2B-BE18-4716-94BB-9458BAFCEA8B
Time Awake Since Boot: 130000 seconds
Time Since Wake: 100000 seconds
System Integrity Protection: enabled
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00006b9987842c58
Exception Note: EXC_CORPSE_NOTIFY
Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [95065]
VM Regions Near 0x6b9987842c58:
MALLOC_NANO (reserved) 0000600008000000-0000600020000000 [384.0M] rw-/rwx SM=NUL reserved VM address space (unallocated)
-->
STACK GUARD 0000700007196000-0000700007197000 [ 4K] ---/rwx SM=NUL stack guard for thread 6
Application Specific Information:
objc_msgSend() selector name: _cfTypeID
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x00007fff6ead369d objc_msgSend + 29
1 com.apple.HIServices 0x00007fff42b275a7 _AXUIElementValidate + 57
2 com.apple.HIServices 0x00007fff42b38b57 AXUIElementCopyAttributeNames + 129
3 com.hegenberg.BetterTouchTool 0x000000010df3b637 +[SBApiAccess valueOfExistingAttribute:ofUIElement:] + 609
4 com.hegenberg.BetterTouchTool 0x000000010df21082 -[SBMacWinHandler zoomWindowUnderCursor] + 237
5 com.hegenberg.BetterTouchTool 0x000000010df4ac22 -[BTTActions zoomWindowUnderCursor] + 92
6 com.hegenberg.BetterTouchTool 0x000000010e084915 __73-[BTTShortcutter performActionReal:withInfo:remainingChildren:withReply:]_block_invoke + 13995
7 com.hegenberg.BetterTouchTool 0x000000010de65b31 +[BetterTouchToolAppDelegate runOnMainQueueWithoutDeadlocking:] + 48
8 com.hegenberg.BetterTouchTool 0x000000010e0811dc -[BTTShortcutter performActionReal:withInfo:remainingChildren:withReply:] + 257
9 com.hegenberg.BetterTouchTool 0x000000010e0810ab -[BTTShortcutter performAction:withInfo:remainingChildren:withReply:] + 122
10 com.hegenberg.BetterTouchTool 0x000000010e079812 -[BTTShortcutter performActionForGestureChildren:withReply:] + 4944
11 com.hegenberg.BetterTouchTool 0x000000010e078369 -[BTTShortcutter performActionForGesture:withReply:] + 1680
12 com.hegenberg.BetterTouchTool 0x000000010e07d403 -[BTTShortcutter performShortcutOrActionForGestureIDReal:checkOnly:additionalString:additionalNumber:bezierPathName:fetchType:] + 2163
13 com.hegenberg.BetterTouchTool 0x000000010e07cb63 -[BTTShortcutter performShortcutOrActionForGestureIDReal:checkOnly:additionalString:additionalNumber:bezierPathName:] + 82
14 com.hegenberg.BetterTouchTool 0x000000010e07a249 -[BTTShortcutter performShortcutOrActionForGestureIDMT:checkOnly:additionalString:additionalNumber:bezierPathName:] + 116
15 com.hegenberg.BetterTouchTool 0x000000010e079dff __113-[BTTShortcutter performShortcutOrActionForGestureID:checkOnly:additionalString:additionalNumber:bezierPathName:]_block_invoke + 50
16 libdispatch.dylib 0x00007fff7026363d _dispatch_client_callout + 8
17 libdispatch.dylib 0x00007fff7026f1ea _dispatch_async_and_wait_invoke + 87
18 libdispatch.dylib 0x00007fff7026363d _dispatch_client_callout + 8
19 libdispatch.dylib 0x00007fff7026e68d _dispatch_main_queue_callback_4CF + 1135
20 com.apple.CoreFoundation 0x00007fff4434aa87 CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 9
21 com.apple.CoreFoundation 0x00007fff4434a1b1 __CFRunLoopRun + 2289
22 com.apple.CoreFoundation 0x00007fff4434966e CFRunLoopRunSpecific + 455
23 com.apple.HIToolbox 0x00007fff435a81ab RunCurrentEventLoopInMode + 292
24 com.apple.HIToolbox 0x00007fff435a7ee5 ReceiveNextEventCommon + 603
25 com.apple.HIToolbox 0x00007fff435a7c76 _BlockUntilNextEventMatchingListInModeWithFilter + 64
26 com.apple.AppKit 0x00007fff4193f77d _DPSNextEvent + 1135
27 com.apple.AppKit 0x00007fff4193e46b -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1361
28 com.apple.AppKit 0x00007fff41938588 -[NSApplication run] + 699
29 com.apple.AppKit 0x00007fff41927ac8 NSApplicationMain + 777
30 libdyld.dylib 0x00007fff702b03d5 start + 1