Bug 112132

Summary: Crash when changing URL in WebView
Product: WebKit Reporter: Thomas McGuire <thomas.mcguire>
Component: WebKit QtAssignee: Nobody <webkit-unassigned>
Status: RESOLVED INVALID    
Severity: Normal CC: milian.wolff
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Linux   

Thomas McGuire
Reported 2013-03-12 04:08:08 PDT
The simple QML snippet below causes a crash, even though all it does is changing the URL. Backtrace: #0 0x00007ff496aaf3b1 in WebCore::FrameView::scheduleRelayout (this=0x1536a80) at /home/thomas/src/webkit-stable/Source/WebCore/page/FrameView.cpp:2275 #1 0x00007ff497a37867 in WebCore::RenderObject::markContainingBlocksForLayout (this=0x154c458, scheduleRelayout=true, newRoot=0x0) at /home/thomas/src/webkit-stable/Source/WebCore/rendering/RenderObject.cpp:713 #3 setNeedsLayout (this=<optimized out>) at /home/thomas/src/webkit-stable/Source/WebCore/page/FrameView.cpp:2388 #4 WebCore::FrameView::setNeedsLayout (this=<optimized out>) at /home/thomas/src/webkit-stable/Source/WebCore/page/FrameView.cpp:2380 #5 0x00007ff496bd57c8 in WebCore::ScrollView::setUseFixedLayout (this=0x15d5a90, enable=<optimized out>) at /home/thomas/src/webkit-stable/Source/WebCore/platform/ScrollView.cpp:296 #6 0x00007ff496a9d453 in WebCore::Frame::createView (this=0x1526e70, viewportSize=..., backgroundColor=..., transparent=false, fixedLayoutSize=..., fixedVisibleContentRect=..., useFixedLayout=true, horizontalScrollbarMode=WebCore::Scrol lbarAlwaysOff, horizontalLock=true, verticalScrollbarMode=WebCore::ScrollbarAlwaysOff, verticalLock=true) at /home/thomas/src/webkit-stable/Source/WebCore/page/Frame.cpp:800 #7 0x00007ff496313b20 in WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage (this=0x1526ae8) at /home/thomas/src/webkit-stable/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:1217 #8 0x00007ff4969d3ade in WebCore::FrameLoader::transitionToCommitted (this=this@entry=0x1526ef8, cachedPage=...) at /home/thomas/src/webkit-stable/Source/WebCore/loader/FrameLoader.cpp:1888 #9 0x00007ff4969d6d91 in WebCore::FrameLoader::commitProvisionalLoad (this=0x1526ef8) at /home/thomas/src/webkit-stable/Source/WebCore/loader/FrameLoader.cpp:1725 #10 0x00007ff4969b8d4d in WebCore::DocumentLoader::commitLoad (this=0x1572bf0, data=0x15e8650 "<!doctype html><html itemscope=\"itemscope\" itemtype=\"http://schema.org/WebPage\"><head><meta itemprop=\"image\" content=\"/images/google_fa vicon_128.png\"><title>Google</title><script>(function(){\nwindow.g"..., length=2347) at /home/thomas/src/webkit-stable/Source/WebCore/loader/DocumentLoader.cpp:329 #11 0x00007ff4969ee771 in WebCore::MainResourceLoader::dataReceived (this=0x15774c0, resource=<optimized out>, data=0x15e8650 "<!doctype html><html itemscope=\"itemscope\" itemtype=\"http://schema.org/WebPage\"><head><meta itemprop=\"ima ge\" content=\"/images/google_favicon_128.png\"><title>Google</title><script>(function(){\nwindow.g"..., length=2347) at /home/thomas/src/webkit-stable/Source/WebCore/loader/MainResourceLoader.cpp:526 #12 0x00007ff496993c89 in WebCore::CachedRawResource::data (this=0x15734c0, data=..., allDataReceived=allDataReceived@entry=false) at /home/thomas/src/webkit-stable/Source/WebCore/loader/cache/CachedRawResource.cpp:70 #13 0x00007ff496a1bfdd in WebCore::SubresourceLoader::sendDataToResource (this=this@entry=0x15780a0, data=data@entry=0x15e7d18 "<!doctype html><html itemscope=\"itemscope\" itemtype=\"http://schema.org/WebPage\"><head><meta itemprop=\"im age\" content=\"/images/google_favicon_128.png\"><title>Google</title><script>(function(){\nwindow.g"..., length=length@entry=2347) at /home/thomas/src/webkit-stable/Source/WebCore/loader/SubresourceLoader.cpp:256 #14 0x00007ff496a1c4be in didReceiveData (allAtOnce=false, encodedDataLength=-1, length=2347, data=0x15e7d18 "<!doctype html><html itemscope=\"itemscope\" itemtype=\"http://schema.org/WebPage\"><head><meta itemprop=\"image\" content=\"/i mages/google_favicon_128.png\"><title>Google</title><script>(function(){\nwindow.g"..., this=0x15780a0) at /home/thomas/src/webkit-stable/Source/WebCore/loader/SubresourceLoader.cpp:228 #15 WebCore::SubresourceLoader::didReceiveData (this=0x15780a0, data=0x15e7d18 "<!doctype html><html itemscope=\"itemscope\" itemtype=\"http://schema.org/WebPage\"><head><meta itemprop=\"image\" content=\"/images/google_favicon_128.png\" ><title>Google</title><script>(function(){\nwindow.g"..., length=2347, encodedDataLength=-1, allAtOnce=false) at /home/thomas/src/webkit-stable/Source/WebCore/loader/SubresourceLoader.cpp:216 #16 0x00007ff496a0adad in WebCore::ResourceLoader::didReceiveData (this=0x15780a0, data=0x15e7d18 "<!doctype html><html itemscope=\"itemscope\" itemtype=\"http://schema.org/WebPage\"><head><meta itemprop=\"image\" content=\"/images/googl e_favicon_128.png\"><title>Google</title><script>(function(){\nwindow.g"..., length=2347, encodedDataLength=-1) at /home/thomas/src/webkit-stable/Source/WebCore/loader/ResourceLoader.cpp:468 #17 0x00007ff496cf3a6d in WebCore::QNetworkReplyHandler::forwardData (this=0x1578c20) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:674 #18 0x00007ff496cf8b6b in flush (this=0x1578c58) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:250 #19 WebCore::QNetworkReplyHandlerCallQueue::flush (this=0x1578c58) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:242 #20 0x00007ff496cf93e6 in ~QueueLocker (this=<synthetic pointer>, __in_chrg=<optimized out>) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:258 #21 WebCore::QNetworkReplyWrapper::emitMetaDataChanged (this=this@entry=0x15d6a30) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:390 #22 0x00007ff496cf94bd in WebCore::QNetworkReplyWrapper::receiveSniffedMIMEType (this=0x15d6a30) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:360 #23 0x00007ff496cf9751 in WebCore::QNetworkReplyWrapper::receiveMetaData (this=0x15d6a30) at /home/thomas/src/webkit-stable/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp:346 #24 0x00007ff4942e4368 in QMetaObject::activate (sender=0x15bba00, signalOffset=3, local_signal_index=0, argv=0x0) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qobject.cpp:3445 #25 0x00007ff4942e3bbc in QMetaObject::activate (sender=0x15bba00, m=0x7ff49476aec0 <QIODevice::staticMetaObject>, local_signal_index=0, argv=0x0) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qobject.cpp:3320 #26 0x00007ff49436c67b in QIODevice::readyRead (this=0x15bba00) at .moc/debug-shared/moc_qiodevice.cpp:153 #27 0x00007ff494f55519 in QNetworkReplyHttpImplPrivate::replyDownloadData (this=0x15bbe50, d=Python Exception <class 'gdb.error'> cannot resolve overloaded method `data': no arguments supplied: ) at /home/thomas/src/qtbase-stable/src/network/access/qnetworkreplyhttpimpl.cpp:1026 #28 0x00007ff494fe88cb in QNetworkReplyHttpImpl::qt_static_metacall (_o=0x15bba00, _c=QMetaObject::InvokeMetaMethod, _id=15, _a=0x7ff424009e50) at .moc/debug-shared/moc_qnetworkreplyhttpimpl_p.cpp:211 #29 0x00007ff4942dcbdb in QMetaCallEvent::placeMetaCall (this=0x7ff424009e90, object=0x15bba00) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qobject.cpp:479 #30 0x00007ff4942ddb4a in QObject::event (this=0x15bba00, e=0x7ff424009e90) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qobject.cpp:1070 #31 0x00007ff4953daa9c in QApplicationPrivate::notify_helper (this=0x14bcbe0, receiver=0x15bba00, e=0x7ff424009e90) at /home/thomas/src/qtbase-stable/src/widgets/kernel/qapplication.cpp:3398 #32 0x00007ff4953d80ac in QApplication::notify (this=0x14bcbc0, receiver=0x15bba00, e=0x7ff424009e90) at /home/thomas/src/qtbase-stable/src/widgets/kernel/qapplication.cpp:2829 #33 0x00007ff4942a39a2 in QCoreApplication::notifyInternal (this=0x14bcbc0, receiver=0x15bba00, event=0x7ff424009e90) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qcoreapplication.cpp:767 #34 0x00007ff4942a7283 in QCoreApplication::sendEvent (receiver=0x15bba00, event=0x7ff424009e90) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qcoreapplication.h:203 #35 0x00007ff4942a4cc4 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x14bcd50) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qcoreapplication.cpp:1368 #36 0x00007ff4942a4675 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qcoreapplication.cpp:1228 #37 0x00007ff49431515a in postEventSourceDispatch (s=0x14cbf70) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qeventdispatcher_glib.cpp:278 #38 0x00007ff49af343b5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #39 0x00007ff49af346e8 in ?? () from /usr/lib64/libglib-2.0.so.0 #40 0x00007ff49af347a4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #41 0x00007ff49431599b in QEventDispatcherGlib::processEvents (this=0x14c3330, flags=...) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qeventdispatcher_glib.cpp:423 #42 0x00007ff48d58f49e in QPAEventDispatcherGlib::processEvents (this=0x14c3330, flags=...) at /home/thomas/src/qtbase-stable/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp:123 #43 0x00007ff4942a0975 in QEventLoop::processEvents (this=0x7fff8ee4f5c0, flags=...) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qeventloop.cpp:136 #44 0x00007ff4942a0c57 in QEventLoop::exec (this=0x7fff8ee4f5c0, flags=...) at /home/thomas/src/qtbase-stable/src/corelib/kernel/qeventloop.cpp:212 #45 0x00007ff4942a4056 in QCoreApplication::exec () at /home/thomas/src/qtbase-stable/src/corelib/kernel/qcoreapplication.cpp:1020 #46 0x00007ff496d0281c in WebCore::RunLoop::run () at /home/thomas/src/webkit-stable/Source/WebCore/platform/qt/RunLoopQt.cpp:69 #47 0x00007ff49637f2da in WebKit::WebProcessMainQt (app=0x14bcbc0) at /home/thomas/src/webkit-stable/Source/WebKit2/WebProcess/qt/WebProcessMainQt.cpp:261 #48 0x0000000000401283 in main (argc=2, argv=0x7fff8ee4fa18) at /home/thomas/src/webkit-stable/Source/WebKit2/qt/MainQt.cpp:100 QML File: import QtQuick 2.0 import QtWebKit 3.0 WebView { width: 400 height: 400 url: "about:blank" Timer { running: true interval: 1000 onTriggered: parent.url = "http://www.google.com" } }
Attachments
Milian Wolff
Comment 1 2013-03-14 06:55:28 PDT
On the CLI I see this: ASSERTION FAILED: m_frame->view() == this /ssd/milian/projects/qt5/qtwebkit/Source/WebCore/page/FrameView.cpp(2275) : void WebCore::FrameView::scheduleRelayout() 1 0x7fa6497aa0fa /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xd650fa) [0x7fa6497aa0fa] 2 0x7fa64a74af57 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0x1d05f57) [0x7fa64a74af57] 3 0x7fa6497aa7ae /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xd657ae) [0x7fa6497aa7ae] 4 0x7fa6498d2108 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xe8d108) [0x7fa6498d2108] 5 0x7fa649797e43 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xd52e43) [0x7fa649797e43] 6 0x7fa64913ad12 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0x6f5d12) [0x7fa64913ad12] 7 0x7fa6496cda5e /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xc88a5e) [0x7fa6496cda5e] 8 0x7fa6496d0ea1 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xc8bea1) [0x7fa6496d0ea1] 9 0x7fa6496b299d /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xc6d99d) [0x7fa6496b299d] 10 0x7fa6496e8961 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xca3961) [0x7fa6496e8961] 11 0x7fa64968c429 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xc47429) [0x7fa64968c429] 12 0x7fa64971620d /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xcd120d) [0x7fa64971620d] 13 0x7fa6497166ee /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xcd16ee) [0x7fa6497166ee] 14 0x7fa649704fdd /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xcbffdd) [0x7fa649704fdd] 15 0x7fa6499ede7d /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xfa8e7d) [0x7fa6499ede7d] 16 0x7fa6499f2f7b /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xfadf7b) [0x7fa6499f2f7b] 17 0x7fa6499f37f6 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xfae7f6) [0x7fa6499f37f6] 18 0x7fa6499f38cd /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xfae8cd) [0x7fa6499f38cd] 19 0x7fa6499f3b61 /ssd/milian/projects/qt5/build-x86/qtwebkit-upstream/Release/lib/libQt5WebKit.so.5(+0xfaeb61) [0x7fa6499f3b61] 20 0x7fa64714ea20 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN11QMetaObject8activateEP7QObjectiiPPv+0x6ce) [0x7fa64714ea20] 21 0x7fa64714e274 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN11QMetaObject8activateEP7QObjectPKS_iPPv+0x38) [0x7fa64714e274] 22 0x7fa6471d6de3 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN9QIODevice9readyReadEv+0x29) [0x7fa6471d6de3] 23 0x7fa647d720a1 /home/milian/projects/compiled/qt5/lib/libQt5Network.so.5(+0x840a1) [0x7fa647d720a1] 24 0x7fa647e05237 /home/milian/projects/compiled/qt5/lib/libQt5Network.so.5(+0x117237) [0x7fa647e05237] 25 0x7fa647147293 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN14QMetaCallEvent13placeMetaCallEP7QObject+0xaf) [0x7fa647147293] 26 0x7fa647148202 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN7QObject5eventEP6QEvent+0x124) [0x7fa647148202] 27 0x7fa6481d2b26 /home/milian/projects/compiled/qt5/lib/libQt5Widgets.so.5(_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0x17c) [0x7fa6481d2b26] 28 0x7fa6481d0136 /home/milian/projects/compiled/qt5/lib/libQt5Widgets.so.5(_ZN12QApplication6notifyEP7QObjectP6QEvent+0x3b8) [0x7fa6481d0136] 29 0x7fa64710e022 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x9a) [0x7fa64710e022] 30 0x7fa647111903 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN16QCoreApplication9sendEventEP7QObjectP6QEvent+0x51) [0x7fa647111903] 31 0x7fa64710f344 /home/milian/projects/compiled/qt5/lib/libQt5Core.so.5(_ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData+0x440) [0x7fa64710f344] I also get this, e.g. when changing URLs in a simple "browser": ``` import QtQuick 2.0 import QtWebKit 3.0 import QtWebKit.experimental 1.0 Rectangle { width: 500 height: 500 TextInput { id: location height: 20 width: parent.width text: "http://www.google.com" onAccepted: { webView.url = location.text } } WebView { id: webView y: location.height height: parent.height - location.height width: parent.width experimental { preferences.developerExtrasEnabled: true } } } ```
Alexey Proskuryakov
Comment 2 2022-07-29 10:53:25 PDT
The Qt port has been removed from WebKit, resolving this bug.
Note You need to log in before you can comment on or make changes to this bug.