Summary: | WebInspector crashed debugging a GWT-based application | ||
---|---|---|---|
Product: | [Frameworks and Libraries] kwebkitpart | Reporter: | Christopher Yeleighton <giecrilj> |
Component: | general | Assignee: | webkit-devel |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | adawit |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Christopher Yeleighton
2011-04-11 00:23:48 UTC
The crash is deep inside the webkit core library, so I doubt it is a problem in kdewebkit. If you can reproduce the crash, is it possible you could test it with Arora browser? It happened to me twice but I am unable to reproduce now. Looks like a heisenbug. Another crash, stack probably corrupt, occurred when I closed the browser window: Application: Konqueror (kdeinit4), signal: Segmentation fault Thread 1 (Thread 0x7f33ba31a760 (LWP 14439)): [KCrash Handler] #6 0x00007f33aef5d3da in WebCore::Page::setDefersLoading(bool) () from /usr/lib64/libQtWebKit.so.4 #7 0x00007f33aec63597 in WebCore::ScriptDebugServer::setJavaScriptPaused(WebCore::Page*, bool) () from /usr/lib64/libQtWebKit.so.4 #8 0x00007f33aec63641 in WebCore::ScriptDebugServer::setJavaScriptPaused(WebCore::PageGroup const&, bool) () from /usr/lib64/libQtWebKit.so.4 #9 0x00007f33aec63786 in WebCore::ScriptDebugServer::pauseIfNeeded(WebCore::Page*) () from /usr/lib64/libQtWebKit.so.4 #10 0x00007f33aec63d88 in WebCore::ScriptDebugServer::callEvent(JSC::DebuggerCallFrame const&, long, int) () from /usr/lib64/libQtWebKit.so.4 #11 0x00007f33af2e01e3 in JSC::Interpreter::debug(JSC::ExecState*, JSC::DebugHookID, int, int) () from /usr/lib64/libQtWebKit.so.4 #12 0x00007f3397af9dbc in ?? () #13 0x00007f33a163e478 in ?? () #14 0x0000000000000002 in ?? () #15 0x00007f3300000994 in ?? () #16 0x00007f3300000994 in ?? () #17 0x00007f3300000003 in ?? () #18 0x0000000100000010 in ?? () #19 0x7fffffff00000003 in ?? () #20 0x00007f33952d35b0 in ?? () #21 0x00007f3397e02780 in ?? () #22 0x00007f3397b45ee8 in ?? () #23 0x00007f339bb52e88 in ?? () #24 0x00007f339f4f31d8 in ?? () #25 0x00007f339bb9f2a0 in ?? () #26 0x00007f33afbf74d0 in ?? () from /usr/lib64/libQtWebKit.so.4 #27 0x00007f339bb9da00 in ?? () #28 0x00007f339f4f3000 in ?? () #29 0x00007f339bb52e88 in ?? () #30 0x00007f33afbf74d0 in ?? () from /usr/lib64/libQtWebKit.so.4 #31 0x00000000021d6e68 in ?? () #32 0x00007f339f4f3058 in ?? () #33 0x00007f339bb52e70 in ?? () #34 0x00007f33af2dfade in JSC::Interpreter::execute(JSC::FunctionExecutable*, JSC::ExecState*, JSC::JSFunction*, JSC::JSObject*, JSC::ArgList const&, JSC::ScopeChainNode*, JSC::JSValue*) () from /usr/lib64/libQtWebKit.so.4 #35 0x00007f33af32d5a7 in JSC::JSFunction::call(JSC::ExecState*, JSC::JSValue, JSC::ArgList const&) () from /usr/lib64/libQtWebKit.so.4 #36 0x00007f33af305950 in JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) () from /usr/lib64/libQtWebKit.so.4 #37 0x00007f33aec55fc1 in WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext*, WebCore::Event*) () from /usr/lib64/libQtWebKit.so.4 #38 0x00007f33aed3de8d in WebCore::EventTarget::fireEventListeners(WebCore::Event*, WebCore::EventTargetData*, WTF::Vector<WebCore::RegisteredEventListener, 1ul>&) () from /usr/lib64/libQtWebKit.so.4 #39 0x00007f33aed3dfce in WebCore::EventTarget::fireEventListeners(WebCore::Event*) () from /usr/lib64/libQtWebKit.so.4 #40 0x00007f33aed49131 in WebCore::Node::handleLocalEvents(WebCore::Event*) () from /usr/lib64/libQtWebKit.so.4 #41 0x00007f33aed4e406 in WebCore::Node::dispatchGenericEvent(WTF::PassRefPtr<WebCore::Event>) () from /usr/lib64/libQtWebKit.so.4 #42 0x00007f33aed4e795 in WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) () from /usr/lib64/libQtWebKit.so.4 #43 0x00007f33aed1bf65 in WebCore::Document::finishedParsing() () from /usr/lib64/libQtWebKit.so.4 #44 0x00007f33aee7240c in WebCore::HTMLTokenizer::end() () from /usr/lib64/libQtWebKit.so.4 #45 0x00007f33aee7b584 in WebCore::HTMLTokenizer::write(WebCore::SegmentedString const&, bool) () from /usr/lib64/libQtWebKit.so.4 #46 0x00007f33aee7594c in WebCore::HTMLTokenizer::executeExternalScriptsIfReady() () from /usr/lib64/libQtWebKit.so.4 #47 0x00007f33aeec2f44 in WebCore::CachedScript::checkNotify() () from /usr/lib64/libQtWebKit.so.4 #48 0x00007f33aeefad9d in WebCore::Loader::Host::didFinishLoading(WebCore::SubresourceLoader*) () from /usr/lib64/libQtWebKit.so.4 #49 0x00007f33aef0f21a in WebCore::SubresourceLoader::didFinishLoading() () from /usr/lib64/libQtWebKit.so.4 #50 0x00007f33af0da283 in WebCore::QNetworkReplyHandler::finish() () from /usr/lib64/libQtWebKit.so.4 #51 0x00007f33af0dab94 in WebCore::QNetworkReplyHandler::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libQtWebKit.so.4 #52 0x00007f33b8ff3def in QMetaObject::activate (sender=0x2050b40, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x0) at kernel/qobject.cpp:3272 #53 0x00007f33b24da2fb in KDEPrivate::AccessManagerReply::slotResult (this=0x2050b40, kJob=<value optimized out>) at /usr/src/debug/kdelibs-4.6.0/kio/kio/accessmanagerreply_p.cpp:301 #54 0x00007f33b24dacc3 in KDEPrivate::AccessManagerReply::qt_metacall (this=0x2050b40, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffe64c09c0) at /usr/src/debug/kdelibs-4.6.0/build/kio/accessmanagerreply_p.moc:83 #55 0x00007f33b8ff3def in QMetaObject::activate (sender=0x204ada0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffe64c09c0) at kernel/qobject.cpp:3272 #56 0x00007f33b93d3362 in KJob::result(KJob*) () from /usr/lib64/libkdecore.so.5 #57 0x00007f33b93d33a0 in KJob::emitResult() () from /usr/lib64/libkdecore.so.5 #58 0x00007f33b254e6dd in KIO::SimpleJob::slotFinished (this=0x204ada0) at /usr/src/debug/kdelibs-4.6.0/kio/kio/job.cpp:525 #59 0x00007f33b254eb42 in KIO::TransferJob::slotFinished (this=0x204ada0) at /usr/src/debug/kdelibs-4.6.0/kio/kio/job.cpp:1118 #60 0x00007f33b2531841 in KIO::TransferJob::qt_metacall (this=0x204ada0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffe64c0e20) at /usr/src/debug/kdelibs-4.6.0/build/kio/jobclasses.moc:367 #61 0x00007f33b8ff3def in QMetaObject::activate (sender=0xb52010, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x0) at kernel/qobject.cpp:3272 #62 0x00007f33b2565902 in KIO::SlaveInterface::dispatch (this=<value optimized out>, _cmd=<value optimized out>, rawdata=...) at /usr/src/debug/kdelibs-4.6.0/kio/kio/slaveinterface.cpp:173 #63 0x00007f33b2508c43 in KIO::SlaveInterface::dispatch (this=<value optimized out>) at /usr/src/debug/kdelibs-4.6.0/kio/kio/slaveinterface.cpp:89 #64 0x00007f33b2507c36 in KIO::Slave::gotInput (this=0xb52010) at /usr/src/debug/kdelibs-4.6.0/kio/kio/slave.cpp:348 #65 0x00007f33b250cb3c in KIO::Slave::qt_metacall (this=0xb52010, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffe64c1260) at /usr/src/debug/kdelibs-4.6.0/build/kio/slave.moc:82 #66 0x00007f33b8ff3def in QMetaObject::activate (sender=0x2726d00, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x0) at kernel/qobject.cpp:3272 #67 0x00007f33b250c917 in KIO::ConnectionPrivate::dequeue (this=0x1b3cbb0) at /usr/src/debug/kdelibs-4.6.0/kio/kio/connection.cpp:82 #68 0x00007f33b250c9cd in KIO::Connection::qt_metacall (this=0x2726d00, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xc3f140) at /usr/src/debug/kdelibs-4.6.0/build/kio/connection.moc:79 #69 0x00007f33b8ff2a6a in QObject::event (this=0x2726d00, e=<value optimized out>) at kernel/qobject.cpp:1211 #70 0x00007f33b818dd14 in QApplicationPrivate::notify_helper (this=0x6b8400, receiver=0x2726d00, e=0x110a8b0) at kernel/qapplication.cpp:4445 #71 0x00007f33b819622a in QApplication::notify (this=<value optimized out>, receiver=0x2726d00, e=0x110a8b0) at kernel/qapplication.cpp:4324 #72 0x00007f33b9c829e6 in KApplication::notify (this=0x7fffe64c1ed0, receiver=0x2726d00, event=0x110a8b0) at /usr/src/debug/kdelibs-4.6.0/kdeui/kernel/kapplication.cpp:311 #73 0x00007f33b8fdebfc in QCoreApplication::notifyInternal (this=0x7fffe64c1ed0, receiver=0x2726d00, event=0x110a8b0) at kernel/qcoreapplication.cpp:732 #74 0x00007f33b8fe23f5 in sendEvent (receiver=0x0, event_type=0, data=0x6103e0) at kernel/qcoreapplication.h:215 #75 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x6103e0) at kernel/qcoreapplication.cpp:1373 #76 0x00007f33b9009783 in sendPostedEvents (s=<value optimized out>) at kernel/qcoreapplication.h:220 #77 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:277 #78 0x00007f33b4889bd3 in g_main_dispatch (context=0x6ba660) at gmain.c:2440 #79 g_main_context_dispatch (context=0x6ba660) at gmain.c:3013 #80 0x00007f33b488a3b0 in g_main_context_iterate (context=0x6ba660, block=1, dispatch=1, self=<value optimized out>) at gmain.c:3091 #81 0x00007f33b488a650 in g_main_context_iteration (context=0x6ba660, may_block=1) at gmain.c:3154 #82 0x00007f33b900991f in QEventDispatcherGlib::processEvents (this=0x617ca0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422 #83 0x00007f33b8232d8e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204 #84 0x00007f33b8fde052 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149 #85 0x00007f33b8fde265 in QEventLoop::exec (this=0x7fffe64c1ca0, flags=...) at kernel/qeventloop.cpp:201 #86 0x00007f33b8fe26ab in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #87 0x00007f33a969734a in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/debug/kdebase-4.6.0/apps/konqueror/src/konqmain.cpp:219 #88 0x00000000004075e9 in launch (argc=2, _name=0x66d408 "/usr/bin/konqueror", args=<value optimized out>, cwd=0x0, envc=<value optimized out>, envs=<value optimized out>, reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0x66d444 "ne-1-26;1302782339;707407;3533_TIME0") at /usr/src/debug/kdelibs-4.6.0/kinit/kinit.cpp:730 #89 0x00000000004080ed in handle_launcher_request (sock=8, who=<value optimized out>) at /usr/src/debug/kdelibs-4.6.0/kinit/kinit.cpp:1222 #90 0x000000000040888a in handle_requests (waitForPid=<value optimized out>) at /usr/src/debug/kdelibs-4.6.0/kinit/kinit.cpp:1415 #91 0x00000000004094e0 in main (argc=4, argv=0x7fffe64c3848, envp=0x7fffe64c3870) at /usr/src/debug/kdelibs-4.6.0/kinit/kinit.cpp:1903 I obtained the following crash by pausing script execution in the Web Inspector and closing the Konqueror window: Thread 1 (Thread 0x7f33ba31a760 (LWP 18020)): [KCrash Handler] #6 0x00007f33aef5d3da in WebCore::Page::setDefersLoading(bool) () from /usr/lib64/libQtWebKit.so.4 #7 0x00007f33aec63597 in WebCore::ScriptDebugServer::setJavaScriptPaused(WebCore::Page*, bool) () from /usr/lib64/libQtWebKit.so.4 #8 0x00007f33aec63641 in WebCore::ScriptDebugServer::setJavaScriptPaused(WebCore::PageGroup const&, bool) () from /usr/lib64/libQtWebKit.so.4 #9 0x00007f33aec63786 in WebCore::ScriptDebugServer::pauseIfNeeded(WebCore::Page*) () from /usr/lib64/libQtWebKit.so.4 #10 0x00007f33aec63a18 in WebCore::ScriptDebugServer::willExecuteProgram(JSC::DebuggerCallFrame const&, long, int) () from /usr/lib64/libQtWebKit.so.4 #11 0x00007f33af2e024b in JSC::Interpreter::debug(JSC::ExecState*, JSC::DebugHookID, int, int) () from /usr/lib64/libQtWebKit.so.4 #12 0x00007f339b680dea in ?? () #13 0x00007f33a163e478 in ?? () #14 0x0000000000000000 in ?? () This crash is similar to #2 and probably different from crash #1. I was not able to get DrKonqi report it because the stack is apparently damaged. The webinspector causing a crash when you close the Konqueror window while it is being shown is a known issue that has been fixed [1] for an upcoming kwebkitpart 1.2 release. See https://projects.kde.org/projects/extragear/base/kwebkitpart/repository/revisions/67a5a3fbfb7f9470c0038f5f33a192db777f4450 The crash during the javascript debugging session however does seems to be an upstream issue, but since you seem to be using QtWebKit that comes bundled with Qt 4.7.x, which unfortunately is a very old version (v2.0), that issue might be have already been solved in the more recent upstream version as well. BTW, would could you install and see if you can duplicate this crash in the Arora web browser ? If you cannot duplicate the crash with Arora, then most definitely the cause of your crash is the one I fixed by the commit I mentioned in comment #5. Arora does not crash under similar circumstances but I cannot reproduce the scroll crash in Konqueror either so it does not prove anything. (In reply to comment #7) > Arora does not crash under similar circumstances but I cannot reproduce the > scroll crash in Konqueror either so it does not prove anything. "scroll crash" ?? The patch fixes the web inspector causing a crash if konqueror is closed while the web inspector is visible. Is that what you meant ? You cannot reproduce the crash on "close" ?? I cannot reproduce the crash on horizontal scroll. The crash on close reproduces inevitably. As I stated in comment #5, the crash on close is fixed. The other crash I cannot duplicate at all and I can only presume it can be choked up to the fact that a very old version webkit (v2.0.0) is bundled with Qt 4.7.x. Even the recently released standalone update to QtWebKit (v2.1.0) is from last July, over eight months old! Anyhow, it is a QtWebKit issue and as such should be reported at http://trac.webkit.org/wiki/QtWebKitBugs. |