RESOLVED FIXED 80209
[Qt][WK2] http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml crashes
https://bugs.webkit.org/show_bug.cgi?id=80209
Summary [Qt][WK2] http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml crashes
Csaba Osztrogonác
Reported 2012-03-02 23:40:10 PST
http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml crashes on Qt5-WK2 platform. I don't know when started it to crash and I don't have crash log, because it didn't upload it. It needs more investigation.
Attachments
Patch (3.77 KB, patch)
2012-05-15 09:33 PDT, Michael Brüning
no flags
Csaba Osztrogonác
Comment 1 2012-03-02 23:49:19 PST
I skipped it to paint the bot green (r109655.)
Csaba Osztrogonác
Comment 2 2012-03-03 01:19:14 PST
Here is the debug crash log: $ cat xss-DENIED-xsl-document-securityOrigin-crash-log.txt | c++filt ERROR: Icon database already has a path and is already open. We don't currently support changing its path and reopening. /home/oszi/WebKit/Source/WebKit2/UIProcess/WebIconDatabase.cpp(66) : void WebKit::WebIconDatabase::setDatabasePath(const WTF::String&) ASSERTION FAILED: !iconURLOriginal.isEmpty() /home/oszi/WebKit/Source/WebCore/loader/icon/IconDatabase.cpp(578) : virtual void WebCore::IconDatabase::setIconURLForPageURL(const WTF::String&, const WTF::String&) 1 0x7f5f481fed65 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::IconDatabase::setIconURLForPageURL(WTF::String const&, WTF::String const&)+0xc9) [0x7f5f481fed65] 2 0x7f5f47364852 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebKit::WebIconDatabase::setIconURLForPageURL(WTF::String const&, WTF::String const&)+0x112) [0x7f5f47364852] 3 0x7f5f4750f42a /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(void CoreIPC::callMemberFunction<WebKit::WebIconDatabase, void (WebKit::WebIconDatabase::*)(WTF::String const&, WTF::String const&), WTF::String, WTF::String>(CoreIPC::Arguments2<WTF::String, WTF::String> const&, WebKit::WebIconDatabase*, void (WebKit::WebIconDatabase::*)(WTF::String const&, WTF::String const&))+0x69) [0x7f5f4750f42a] 4 0x7f5f4750eeb4 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(void CoreIPC::handleMessage<Messages::WebIconDatabase::SetIconURLForPageURL, WebKit::WebIconDatabase, void (WebKit::WebIconDatabase::*)(WTF::String const&, WTF::String const&)>(CoreIPC::ArgumentDecoder*, WebKit::WebIconDatabase*, void (WebKit::WebIconDatabase::*)(WTF::String const&, WTF::String const&))+0x5f) [0x7f5f4750eeb4] 5 0x7f5f4750ea72 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebKit::WebIconDatabase::didReceiveWebIconDatabaseMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*)+0xf4) [0x7f5f4750ea72] 6 0x7f5f47365404 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebKit::WebIconDatabase::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*)+0x32) [0x7f5f47365404] 7 0x7f5f4734794c /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebKit::WebContext::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*)+0x268) [0x7f5f4734794c] 8 0x7f5f473bab63 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebKit::WebProcessProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*)+0x14f) [0x7f5f473bab63] 9 0x7f5f4733e22f /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebKit::WebConnectionToWebProcess::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*)+0x179) [0x7f5f4733e22f] 10 0x7f5f472948e3 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(CoreIPC::Connection::dispatchMessage(CoreIPC::Connection::Message<CoreIPC::ArgumentDecoder>&)+0x171) [0x7f5f472948e3] 11 0x7f5f47294ac5 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(CoreIPC::Connection::dispatchMessages()+0xc9) [0x7f5f47294ac5] 12 0x7f5f4729ee9d /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WTF::FunctionWrapper<void (CoreIPC::Connection::*)()>::operator()(CoreIPC::Connection*)+0x59) [0x7f5f4729ee9d] 13 0x7f5f4729eba6 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WTF::BoundFunctionImpl<WTF::FunctionWrapper<void (CoreIPC::Connection::*)()>, void ()(CoreIPC::Connection*)>::operator()()+0x32) [0x7f5f4729eba6] 14 0x7f5f473d5a60 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WTF::Function<void ()()>::operator()() const+0x72) [0x7f5f473d5a60] 15 0x7f5f47ebf831 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::RunLoop::performWork()+0x91) [0x7f5f47ebf831] 16 0x7f5f48195ccc /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::RunLoop::TimerObject::performWork()+0x1c) [0x7f5f48195ccc] 17 0x7f5f48196b05 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(+0x2cacb05) [0x7f5f48196b05] 18 0x7f5f41db2286 /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtCore.so.5(QObject::event(QEvent*)+0x396) [0x7f5f41db2286] 19 0x7f5f42ed40ac /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtWidgets.so.5(QApplicationPrivate::notify_helper(QObject*, QEvent*)+0xac) [0x7f5f42ed40ac] 20 0x7f5f42edcf22 /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtWidgets.so.5(QApplication::notify(QObject*, QEvent*)+0x152) [0x7f5f42edcf22] 21 0x7f5f41d91c24 /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtCore.so.5(QCoreApplication::notifyInternal(QObject*, QEvent*)+0x84) [0x7f5f41d91c24] 22 0x7f5f41d96692 /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtCore.so.5(QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)+0x2e2) [0x7f5f41d96692] 23 0x7f5f41dd6d43 /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtCore.so.5(+0x20bd43) [0x7f5f41dd6d43] 24 0x7f5f447446f2 /lib/libglib-2.0.so.0(g_main_context_dispatch+0x1f2) [0x7f5f447446f2] 25 0x7f5f44748568 /lib/libglib-2.0.so.0(+0x42568) [0x7f5f44748568] 26 0x7f5f4474871c /lib/libglib-2.0.so.0(g_main_context_iteration+0x6c) [0x7f5f4474871c] 27 0x7f5f41dd683e /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtCore.so.5(QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)+0x6e) [0x7f5f41dd683e] 28 0x7f5f41d91b7d /usr/local/Trolltech/Qt5/Qt-5.0.0-r25/lib/libQtCore.so.5(QCoreApplication::processEvents(QFlags<QEventLoop::ProcessEventsFlag>, int)+0x3d) [0x7f5f41d91b7d] 29 0x4117a0 /home/oszi/WebKit/WebKitBuild/Debug/bin/WebKitTestRunner() [0x4117a0] 30 0x414212 /home/oszi/WebKit/WebKitBuild/Debug/bin/WebKitTestRunner() [0x414212] 31 0x417b3b /home/oszi/WebKit/WebKitBuild/Debug/bin/WebKitTestRunner() [0x417b3b]
Michael Brüning
Comment 3 2012-05-15 01:53:08 PDT
Investigating...
Michael Brüning
Comment 4 2012-05-15 04:21:14 PDT
The problem here seems to be that WTR is creating a new WebView reusing the WebContext reference from the previous view, which leads to the resetting of the WebIconsDatabase databasePath. I have checked the mac port and it's not a problem there as the mac WKView does not initialize the icon database automatically. Will look how to best fix this.
Michael Brüning
Comment 5 2012-05-15 09:17:14 PDT
I have solved the first crash, but this uncovered an ASSERT on debug builds and a crash (not 100% reproducible) on Release builds. I will upload the first patch anyway as this might cause errors elsewhere in WTR and investigate furhter on the 2nd assert / crash.
Michael Brüning
Comment 6 2012-05-15 09:33:16 PDT
WebKit Review Bot
Comment 7 2012-05-15 13:25:25 PDT
Comment on attachment 141989 [details] Patch Clearing flags on attachment: 141989 Committed r117141: <http://trac.webkit.org/changeset/117141>
WebKit Review Bot
Comment 8 2012-05-15 13:25:30 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.