Bug 17073 - Safari auto-quits on SVG-enhanced page when Adobe plug-in v3 installed
Summary: Safari auto-quits on SVG-enhanced page when Adobe plug-in v3 installed
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: SVG (show other bugs)
Version: 523.x (Safari 3)
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Nobody
URL: http://files.myopera.com/MacDev_ed/sv...
Keywords:
Depends on:
Blocks:
 
Reported: 2008-01-29 14:27 PST by Henri Sivonen
Modified: 2008-03-22 14:17 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Henri Sivonen 2008-01-29 14:27:02 PST
Seen in Safari 3.0.4 and r29844 on PPC (G5) Mac OS X 10.5.1.

Reproducible:
Always.

Steps to reproduce:
1) Load http://my.opera.com/MacDev_ed/blog/2008/01/22/core-web

Actual result:
The app auto-quits. No crash reporter.

Expected results:
Expected the page to render.

Additional info:
I'm not seeing this when WebKit is embedded in NetNewsWire and doesn't display SVG.
Comment 1 Eric Seidel (no email) 2008-01-29 14:28:52 PST
I don't see this crash on TOT.  My 3.0.4 instance is too full of useful pages at the moment to test a crasher on it. :)
Comment 2 Mark Rowe (bdash) 2008-01-29 14:39:34 PST
I cannot reproduce this with Safari 3.0.4 on Mac OS X 10.5, nor with latest SVN.
Comment 3 Mark Rowe (bdash) 2008-01-29 14:40:16 PST
Can you check the system console for any relevant log output from Safari?
Comment 4 Henri Sivonen 2008-01-30 01:37:38 PST
Nothing in console, but this SVG image alone is enough to trigger this:
http://files.myopera.com/MacDev_ed/svg/sign_danger_corrosive.svg
Comment 5 Mark Rowe (bdash) 2008-01-30 02:28:56 PST
I still can't reproduce.  Can you please run Safari under GDB and paste the output that is displayed when it "quits" while viewing this SVG?
Comment 6 Henri Sivonen 2008-01-30 09:43:32 PST
gdb says:
Program exited normally.
Comment 7 Mark Rowe (bdash) 2008-01-30 23:08:30 PST
Do you have any Safari extensions installed?  What about plugins that may be taking over the rendering of SVG (eg, the Adobe SVG plugin)?

If you're familiar with gdb I would appreciate if you could set a breakpoint on exit, and then get a backtrace at the point which it is called.  Something like the following:

(gdb) b exit
[0] cancel
[1] all

Non-debugging symbols:
[2]    +[NSThread exit]
[3]    exit
> 3
Breakpoint 3 at 0x92850415
(gdb) r
Breakpoint 3, 0x92850415 in exit ()
(gdb) bt


Thanks!
Comment 8 Henri Sivonen 2008-03-22 14:09:51 PDT
Sorry the question fell through the cracks. Here's the backtrace:
(gdb) b exit
[0] cancel
[1] all

Non-debugging symbols:
[2]    +[NSThread exit]
[3]    exit
> 3
Breakpoint 1 at 0x14104
(gdb) r
Starting program: /Applications/Safari.app/Contents/MacOS/Safari 
Reading symbols for shared libraries ++++++++++++++++++++.................................................................................. done
Breakpoint 1 at 0x90162124
Reading symbols for shared libraries . done
Reading symbols for shared libraries .. done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries .. done
Reading symbols for shared libraries . done

Breakpoint 1, 0x90162124 in exit ()
(gdb) bt
#0  0x90162124 in exit ()
#1  0x955ebfb0 in ExitToShell ()
#2  0x0822eda8 in ?? ()
#3  0x08223f34 in ?? ()
#4  0x08223ce4 in ?? ()
#5  0x08228e74 in ?? ()
#6  0x08228eb0 in ?? ()
#7  0x08220da8 in ?? ()
#8  0x08229c68 in ?? ()
#9  0x0019cd6c in -[WebBaseNetscapePluginView(Internal) _createPlugin] ()
#10 0x0019caa0 in -[WebBaseNetscapePluginView start] ()
#11 0x0019c8ac in -[WebBaseNetscapePluginView viewDidMoveToWindow] ()
#12 0x9056c060 in -[NSView _setWindow:] ()
#13 0x90574908 in -[NSView addSubview:] ()
#14 0x0019c184 in -[WebHTMLView addSubview:] ()
#15 0x00c3fad4 in WebCore::Widget::addToSuperview ()
#16 0x00c3f664 in WebCore::RenderWidget::setWidget ()
#17 0x00c3f35c in WebCore::RenderPart::setWidget ()
#18 0x00c3f194 in WebCore::FrameLoader::loadPlugin ()
#19 0x00c3ed44 in WebCore::FrameLoader::requestObject ()
#20 0x00c3b34c in WebCore::RenderPartObject::updateWidget ()
#21 0x00bd2f0c in WebCore::FrameView::performPostLayoutTasks ()
#22 0x00baad5c in WebCore::FrameView::layout ()
#23 0x00dd7270 in WebCore::PluginTokenizer::writeRawData ()
#24 0x00b410a8 in WebCore::FrameLoader::write ()
#25 0x00b7f8a8 in -[WebCoreFrameBridge receivedData:textEncodingName:] ()
#26 0x001948c0 in -[WebHTMLRepresentation receivedData:withDataSource:] ()
#27 0x001947bc in -[WebDataSource(WebInternal) _receivedData:] ()
#28 0x00194738 in WebFrameLoaderClient::committedLoad ()
#29 0x00b7c36c in WebCore::DocumentLoader::commitLoad ()
#30 0x00b7bef8 in WebCore::ResourceLoader::didReceiveData ()
#31 0x00b7be34 in WebCore::MainResourceLoader::didReceiveData ()
#32 0x95818850 in _NSURLConnectionDidReceiveData ()
#33 0x9453c708 in sendDidReceiveDataCallback ()
#34 0x94539dac in _CFURLConnectionSendCallbacks ()
#35 0x94539778 in muxerSourcePerform ()
#36 0x903f1350 in CFRunLoopRunSpecific ()
#37 0x945f23a8 in RunCurrentEventLoopInMode ()
#38 0x945f21cc in ReceiveNextEventCommon ()
#39 0x945f200c in BlockUntilNextEventMatchingListInMode ()
#40 0x905933c0 in _DPSNextEvent ()
#41 0x90592d88 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] ()
#42 0x00007ff0 in ?? ()
#43 0x9058ca44 in -[NSApplication run] ()
#44 0x9055d448 in NSApplicationMain ()
#45 0x000bd374 in ?? ()
(gdb) 

Looks like a plug-in.

It turns out I had the Adobe plug-in even though I thought I did not. Uninstalling it solved the problem.
Comment 9 Mark Rowe (bdash) 2008-03-22 14:17:01 PDT
Thanks for following up on this!  That backtrace definitely shows that the Adobe plug-in is terminating the process for some reason.  Sadly there's not much that we can do about that.  I'm closing this bug as INVALID to indicate that the issue is outside of WebKit.  Thanks again for following up on this.