WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
4286
.Mac prefpane crashes when Safari using CVS WebKit is running
https://bugs.webkit.org/show_bug.cgi?id=4286
Summary
.Mac prefpane crashes when Safari using CVS WebKit is running
Edmund Rhudy
Reported
2005-08-04 14:51:58 PDT
The summary says it all, really. It's completely trivial, because all you need to do is quit Safari and restart System Preferences, but still a bit of a curiosity. Also, after attaching gdb to it, then detaching, it stopped crashing, even through multiple invocations of System Preferences and various sacrifices to try to get a backtrace again. Divine touch of gdb? PID: 9207 Thread: Unknown Link (dyld) error: Symbol not found: _objc_msgSendSuper Referenced from: /System/Library/PreferencePanes/Mac.prefPane/Contents/MacOS/Mac Expected in: /Applications/WebKit.app/Contents/Resources/WebKit.framework/Versions/A/WebKit
Attachments
Patch to have WebKit clear DYLD_FRAMEWORK_PATH
(4.54 KB, patch)
2005-09-10 23:51 PDT
,
Mark Rowe (bdash)
no flags
Details
Formatted Diff
Diff
Updated patch without two irrelevant changes in project file.
(4.31 KB, patch)
2005-09-11 00:04 PDT
,
Mark Rowe (bdash)
darin
: review+
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Edmund Rhudy
Comment 1
2005-08-04 15:15:42 PDT
Backtrace! (gdb) backtrace #0 0x8fe0416c in __dyld__ZN4dyld14bindLazySymbolEPK11mach_headerPm () #1 0x8fe15678 in __dyld_stub_binding_helper_interface () #2 0x055709bc in std::locale::id::id_count_s () #3 0x94517290 in -[NSPrefPaneBundle instantiatePrefPaneObject] () #4 0x00006808 in ?? () #5 0x00006504 in ?? () #6 0x928c5998 in __NSFireDelayedPerform () #7 0x9076bdb0 in __CFRunLoopDoTimer () #8 0x90758728 in __CFRunLoopRun () #9 0x90757cdc in CFRunLoopRunSpecific () #10 0x93161be0 in RunCurrentEventLoopInMode () #11 0x931611ec in ReceiveNextEventCommon () #12 0x931610e0 in BlockUntilNextEventMatchingListInMode () #13 0x9365c704 in _DPSNextEvent () #14 0x9365c3c8 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] () #15 0x9365890c in -[NSApplication run] () #16 0x93749284 in NSApplicationMain () #17 0x00002d04 in ?? () #18 0x0000a348 in ?? ()
Mark Rowe (bdash)
Comment 2
2005-08-06 22:44:03 PDT
I cannot reproduce this. The dyld error you provided says that the .Mac preference pane is trying to look up objc_msgSendSuper in the WebKit framework inside another app bundle. This seems like a nonsensical thing to do. The only reason I can think of is that you've some launched System Preferences in such a way that it's using the newer WebKit. Are you able to provide more information, such as the full crash report or instructions on how to reproduce this?
Edmund Rhudy
Comment 3
2005-08-06 23:55:26 PDT
I'm not invoking System Preferences in any irregular way, and this only occurs if WebKit.app from Nightshift is running at the time (I thought I had mentioned this initially - bad!). Unfortunately, there's nothing more to the crash logs than what I posted. Like I said, this is something really trivial, and is more of a weird novelty bug than anything else. In fact, it's probably not even a bug in WebKit at all, but some manifestation of dyld weirdness.
Mark Rowe (bdash)
Comment 4
2005-08-07 01:22:10 PDT
There is more to the crash report that is of interest than just the backtrace. When the dialog comes up informing you that System Preferences has crashed, click on Report. Copy & Paste the entire contents of the pane containing the crash report. It contains relevant information such as what libraries have been linked into the crashed process. How are you running System Preferences? Are you clicking on it in the Dock, launching it via Quicksilver/ LaunchBar or similar, etc?
Darin Adler
Comment 5
2005-09-10 22:31:56 PDT
Seems highly unlikely that Safari running in a separate process is able to cause this problem with the .Mac preferences pane, unless you opened preferences using a button inside Safari. If you did, then the DYLD_FRAMEWORK_PATH that was used to start up Safari could mean that System Preferences will run with various other frameworks that you built rather than the system versions. And that could cause trouble.
Mark Rowe (bdash)
Comment 6
2005-09-10 22:48:17 PDT
Darin's guess was bang on. Launching System Preferences from the 'Change Settings...' buttons in Safari's Advanced preference pane, and then clicking through to .Mac preferences yields the dyld error. After discussing this on IRC the proposed solution is to have the nightly builds set an extra environment variable which WebKit will check for, and reset DYLD_FRAMEWORK_PATH if it is set.
Mark Rowe (bdash)
Comment 7
2005-09-10 23:51:31 PDT
Created
attachment 3856
[details]
Patch to have WebKit clear DYLD_FRAMEWORK_PATH
Mark Rowe (bdash)
Comment 8
2005-09-11 00:04:30 PDT
Created
attachment 3857
[details]
Updated patch without two irrelevant changes in project file.
Darin Adler
Comment 9
2005-09-11 00:05:34 PDT
Comment on
attachment 3857
[details]
Updated patch without two irrelevant changes in project file. Hooray! Great trick. (Waits for Maciej to tell him why it's no good.)
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug