Quicksilver: Crash when using two displays in Mojave

Environment: Two monitor setup in MacOS Mojave, version 1.6.0 (4025), Bezel interface and only default plugins.

  1. Open an application in full screen mode and make sure it has focus.
  2. Trigger Quicksilver -> Crash
Process:               Quicksilver [2226]
Path:                  /Applications/Quicksilver.app/Contents/MacOS/Quicksilver
Identifier:            com.blacktree.Quicksilver
Version:               1.6.0 (4025)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Quicksilver [2226]
User ID:               501

Date/Time:             2018-10-03 14:59:55.055 +0200
OS Version:            Mac OS X 10.14 (18A391)
Report Version:        12
Anonymous UUID:        9880B950-019F-7940-BF21-8BF85C835FF5


Time Awake Since Boot: 510 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
Assertion failed: (type == kCGImageComponent8BitInteger), function img_data_depth, file /BuildRoot/Library/Caches/com.apple.xbs/Sources/CoreGraphics/CoreGraphics-1245.8.4.8/CoreGraphics/Images/CGSImage.c, line 5889.


Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib              0x00007fff6dd70b86 __pthread_kill + 10
1   libsystem_pthread.dylib             0x00007fff6de26c50 pthread_kill + 285
2   libsystem_c.dylib                   0x00007fff6dcda1c9 abort + 127
3   libsystem_c.dylib                   0x00007fff6dca2868 __assert_rtn + 320
4   com.apple.CoreGraphics              0x00007fff40f59456 img_data_lock + 10766
5   com.apple.CoreGraphics              0x00007fff40f52db3 CGSImageDataLock + 1217
6   com.apple.CoreGraphics              0x00007fff40f5288f RIPImageDataInitializeShared + 177
7   com.apple.CoreGraphics              0x00007fff40f5241d RIPImageCacheGetRetained + 667
8   com.apple.CoreGraphics              0x00007fff40f51faa ripc_AcquireRIPImageData + 323
9   com.apple.CoreGraphics              0x00007fff40f51189 ripc_DrawImage + 898
10  com.apple.CoreGraphics              0x00007fff40f50df8 CGContextDelegateDrawImage + 47
11  com.apple.CoreGraphics              0x00007fff40f50567 CGContextDrawImageWithOptions + 471
12  com.apple.CoreGraphics              0x00007fff40f5037b CGContextDrawImage + 57
13  com.apple.AppKit                    0x00007fff3e1b48c6 __74-[NSImageRep drawInRect:fromRect:operation:fraction:respectFlipped:hints:]_block_invoke + 949
14  com.apple.AppKit                    0x00007fff3e1b431a -[NSImageRep drawInRect:fromRect:operation:fraction:respectFlipped:hints:] + 976
15  com.apple.AppKit                    0x00007fff3e1b3911 __71-[NSImage drawInRect:fromRect:operation:fraction:respectFlipped:hints:]_block_invoke.1381 + 1007
16  com.apple.AppKit                    0x00007fff3e103538 -[NSImage _usingBestRepresentationForRect:context:hints:body:] + 156
17  com.apple.AppKit                    0x00007fff3e1b3292 -[NSImage drawInRect:fromRect:operation:fraction:respectFlipped:hints:] + 1423
18  com.blacktree.QSInterface           0x0000000101d3f19b -[QSObjectCell drawObjectImage:inRect:cellFrame:controlView:flipped:opacity:] + 841
19  com.blacktree.QSInterface           0x0000000101d3dc06 -[QSObjectCell drawIconForObject:withFrame:inView:] + 386
20  com.blacktree.QSInterface           0x0000000101d3d9f8 -[QSObjectCell drawInteriorWithFrame:inView:] + 217
21  com.blacktree.QSInterface           0x0000000101d3d1c7 -[QSObjectCell drawWithFrame:inView:] + 1292
22  com.blacktree.QSInterface           0x0000000101d41bec -[QSObjectView drawRect:] + 140
23  com.blacktree.QSInterface           0x0000000101d4915e -[QSSearchObjectView drawRect:] + 835
24  com.apple.AppKit                    0x00007fff3e178205 _NSViewDrawRect + 66
25  com.apple.AppKit                    0x00007fff3e163002 -[NSView _drawRect:clip:] + 1745
...skipping...
25  com.apple.AppKit                    0x00007fff3e163002 -[NSView _drawRect:clip:] + 1745
26  com.apple.AppKit                    0x00007fff3e161ea3 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 1400
27  com.apple.AppKit                    0x00007fff3e162369 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 2622
28  com.apple.AppKit                    0x00007fff3e162369 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 2622
29  com.apple.AppKit                    0x00007fff3e15ffa8 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 938
30  com.apple.AppKit                    0x00007fff3e15d50a -[NSView _oldDisplayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 1887
31  com.apple.AppKit                    0x00007fff3e15cb49 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 253
32  com.apple.AppKit                    0x00007fff3e159736 -[NSView displayIfNeeded] + 1300
33  com.apple.AppKit                    0x00007fff3e12d4e2 -[NSWindow _setFrameCommon:display:stashSize:] + 4015
34  com.apple.AppKit                    0x00007fff3e12c51d -[NSWindow _setFrame:display:allowImplicitAnimation:stashSize:] + 192
35  com.apple.AppKit                    0x00007fff3e12c456 -[NSWindow setFrame:display:] + 51
36  com.blacktree.Quicksilver.BezelInterfacePlugIn      0x000000010a1375f2 0x10a133000 + 17906
37  com.blacktree.QSInterface           0x0000000101d39d0b -[QSInterfaceController activate:] + 276
38  com.blacktree.Quicksilver           0x0000000101b7cc44 0x101b73000 + 40004
39  com.blacktree.QSFoundation          0x0000000101bf3703 -[NDHotKeyEvent performHotKeyPressed] + 216
40  com.blacktree.QSFoundation          0x0000000101bf4cff eventHandlerCallback + 487
41  com.apple.HIToolbox                 0x00007fff3fd8d8d9 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1502
42  com.apple.HIToolbox                 0x00007fff3fd8cc16 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 371
43  com.apple.HIToolbox                 0x00007fff3fdaa1cd SendEventToEventTarget + 39
44  com.apple.AppKit                    0x00007fff3e058530 -[NSApplication(NSEvent) sendEvent:] + 1844
45  com.blacktree.Quicksilver           0x0000000101b76c18 0x101b73000 + 15384
46  com.apple.AppKit                    0x00007fff3e045795 -[NSApplication run] + 755
47  com.apple.AppKit                    0x00007fff3e034e97 NSApplicationMain + 780
48  libdyld.dylib                       0x00007fff6dc32085 start + 1

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 36 (16 by maintainers)

Commits related to this issue

Most upvoted comments

I can no longer reproduce this crash in 10.14.2. Maybe Apple fixed it. Can anyone confirm?

I’ll get crashes almost every time I plug or unplug the external thunderbolt display. The external display is configured as main display when attached.

I don’t have quicksilver configured to show the menu bar icon, only the icon in the dock.

This did not happen to me on my old macbook (10.13.6) only on the new one (now on 10.14.1).

I have change Mojave setting for not using a high-DPI monitor, is it relate?

I’m pretty sure the crash is related to drawing images, not text, so probably not.

Here’s a new try of instructions to reproduce it, and it requires two screens (at least?):

  1. Quit Quicksilver
  2. Launch Quicksilver
  3. Focus the screen without the QS animation
  4. Trigger Quicksilver
  5. Focus the screen with the QS animation
  6. Trigger Quicksilver -> crash

Luckily, this gives a workaround. When starting Quicksilver, make sure to first trigger it on the screen with the QS animation. After doing that, I’m not experiencing any problems (I’ll come back if I do).