Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Synchronize arrays whilst enumerating them to avoid crashes. #1094

Merged
merged 2 commits into from Sep 5, 2012

Conversation

Projects
None yet
2 participants
Owner

pjrobertson commented Sep 2, 2012

I've set this against the release branch as it's such a small change, and the crash report was the only crash report we currently have for ß70 pre :-)

Here's the crash report:

Process:         Quicksilver [10530]
Path:            /Applications/Quicksilver.app/Contents/MacOS/Quicksilver
Identifier:      com.blacktree.Quicksilver
Version:         ß70 (3933)
Code Type:       X86 (Native)
Parent Process:  ??? [1]

Date/Time:       2012-08-29 21:36:26.750 -1000
OS Version:      Mac OS X 10.7.4 (11E53)
Report Version:  9

Interval Since Last Report:          32564 sec
Crashes Since Last Report:           1
Per-App Interval Since Last Report:  24 sec
Per-App Crashes Since Last Report:   1
Anonymous UUID:                      F36FD921-C11B-4253-9341-1872CECA0988

Crashed Thread:  2  Dispatch queue: com.apple.root.default-priority

Exception Type:  EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes: 0x0000000000000001, 0x0000000000000000

Application Specific Information:
objc[10530]: garbage collection is OFF
objc[10530]: FREED(id): message countByEnumeratingWithState:objects:count: sent to freed object=0x473c90

Thread 0:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib          0x9af06c22 mach_msg_trap + 10
1   libsystem_kernel.dylib          0x9af061f6 mach_msg + 70
2   com.apple.CoreFoundation        0x931859da __CFRunLoopServiceMachPort + 170
3   com.apple.CoreFoundation        0x9318eb04 __CFRunLoopRun + 1428
4   com.apple.CoreFoundation        0x9318e1dc CFRunLoopRunSpecific + 332
5   com.apple.CoreFoundation        0x9318e088 CFRunLoopRunInMode + 120
6   com.apple.HIToolbox             0x9b430723 RunCurrentEventLoopInMode + 318
7   com.apple.HIToolbox             0x9b437a8b ReceiveNextEventCommon + 381
8   com.apple.HIToolbox             0x9b4378fa BlockUntilNextEventMatchingListInMode + 88
9   com.apple.AppKit                0x957f90d8 _DPSNextEvent + 678
10  com.apple.AppKit                0x957f8942 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 113
11  com.apple.AppKit                0x957f4cb1 -[NSApplication run] + 911
12  com.apple.AppKit                0x95a85bd9 NSApplicationMain + 1054
13  com.blacktree.Quicksilver       0x0000277d 0x1000 + 6013

Thread 1:: Dispatch queue: com.apple.libdispatch-manager
0   libsystem_kernel.dylib          0x9af0990a kevent + 10
1   libdispatch.dylib               0x93125e10 _dispatch_mgr_invoke + 969
2   libdispatch.dylib               0x9312485f _dispatch_mgr_thread + 53

Thread 2 Crashed:: Dispatch queue: com.apple.root.default-priority
0   libobjc.A.dylib                 0x904ece49 _objc_trap + 3
1   libobjc.A.dylib                 0x904ecda9 _objc_error + 114
2   libobjc.A.dylib                 0x904ece7a __objc_error + 45
3   libobjc.A.dylib                 0x904e9876 _freedHandler + 53
4   com.blacktree.QSFoundation      0x0003e483 -[NSArray(Transformation) arrayByPerformingSelector:] + 326

@skurfer skurfer added a commit that referenced this pull request Sep 5, 2012

@skurfer skurfer Merge pull request #1094 from pjrobertson/arrayByPerformingSelectorCr…
…ashFix

Synchronize arrays whilst enumerating them to avoid crashes.
4c00267

@skurfer skurfer merged commit 4c00267 into quicksilver:release Sep 5, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment