Open n8henrie opened 1 month ago
Seem to have just had a crash at https://github.com/quicksilver/Quicksilver/blob/f4f679f3a9a0dc377214e150761ff633a9807a13/Quicksilver/Code-QuickStepCore/QSProcessMonitor.m#L170, but XCode said it was "paused" -- unclear if I fat fingered something while it was running in the background.
For users thinking that this might be the cause of their crashes, consider disabling QSProcessMonitor in your settings by going to: Preferences
-> Catalog
-> Applications
and unchecking Running Applications & Processes
Hi all,
I made a few related changes in the process-monitor-crashes branch, and it seems to be running much more stably for me.
If anyone would be willing to try out a debug version with these changes, I'd appreciate the feedback, I'll probably merge and cut a new release in a week or so if things seem improved:
EDIT:
NB: This is a pre-release version that is not signed, so you'll have to do a little dance to get MacOS to allow you to open the application; it usually involves multiple rounds of right-clicking (or two-finger tapping) the application and choosing "open" followed by a dialog warning you about it being from an "unidentified developer": https://support.apple.com/guide/mac-help/open-a-mac-app-from-an-unidentified-developer-mh40616/mac
Looks like the same crash is still occurring: https://github.com/quicksilver/Quicksilver/issues/2990#issuecomment-2153738223
I'm still occasionally getting some of these EXC_BAD_ACCESS
crashes coming through QSProcessMonitor, in spite of converting things to use the threadsafedictionary. Would appreciate any input from @pjrobertson @skurfer or anyone more familiar with ObjC.
Just now, crash is at https://github.com/quicksilver/Quicksilver/blob/af772d58691fc54d9f41bdc1a7690c78dd0a6e3b/Quicksilver/Code-QuickStepCore/QSObject.m#L461
#0 0x000000019cee9c08 in objc_msgSend ()
#1 0x00000001032f7fb4 in -[QSThreadSafeMutableDictionary objectForKey:] ()
#2 0x00000001033c2d9c in -[QSObject objectForCache:] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSObject.m:461
#3 0x00000001033cdac8 in -[QSObject(FileHandling) fileExtension] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSObject_FileHandling.m:831
#4 0x00000001033cd73c in -[QSObject(FileHandling) isClipping] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSObject_FileHandling.m:810
#5 0x00000001033cbf8c in +[QSObject(FileHandling) fileObjectWithPath:] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSObject_FileHandling.m:631
#6 0x00000001033f243c in -[QSProcessMonitor imbuedFileProcessForDict:] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSProcessMonitor.m:179
#7 0x00000001033f3f20 in -[QSProcessMonitor reloadProcesses] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSProcessMonitor.m:391
#8 0x00000001033f326c in -[QSProcessMonitor appLaunched:] at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSProcessMonitor.m:298
#9 0x00000001033f1d44 in __appLaunched_block_invoke at /Users/n8henrie/git/qs/quicksilver/Quicksilver/Code-QuickStepCore/QSProcessMonitor.m:82
#10 0x0000000102cdcf2c in _dispatch_call_block_and_release ()
#11 0x0000000102cdeba4 in _dispatch_client_callout ()
#12 0x0000000102ce7d88 in _dispatch_lane_serial_drain ()
#13 0x0000000102ce8e7c in _dispatch_lane_invoke ()
#14 0x0000000102cf8958 in _dispatch_root_queue_drain_deferred_wlh ()
#15 0x0000000102cf7c30 in _dispatch_workloop_worker_thread ()
#16 0x000000010359bd40 in _pthread_wqthread ()
AFAICT cache
should be thread safe.
Before submitting your bug report, please confirm you have completed the following steps
Bug description
As per the title -- we have a number of crashes in QSProcessMonitor. This will be a meta-issue with links to a few relevant issues.
For example, I get a
EXC_BAD_ACCESS
at https://github.com/quicksilver/Quicksilver/blob/f4f679f3a9a0dc377214e150761ff633a9807a13/Quicksilver/Code-QuickStepCore/QSObject.m#L412My
Steps to reproduce
Running Applications & Processes
inSettings
->Catalog
->Applications
Expected behavior
No crash
MacOS Version
Other
Quicksilver Version
2.4.2
Relevant Plugins
No response
Crash Logs or Spindump
The callstack during a crash:
Screenshots
No response
Additional info
No response