RESOLVED FIXED 27067
[QT] [DEBUG] Assert hang@HistoryItem::addChildItem
https://bugs.webkit.org/show_bug.cgi?id=27067
Summary [QT] [DEBUG] Assert hang@HistoryItem::addChildItem
Antonio Gomes
Reported 2009-07-07 21:31:50 PDT
Steps to reproduce: - Debug build 1) bin/QtLauncher www.google.com/ig (in my case there is a youtube.com widget called "Official You Tube Gadget") 2) make a search for anything. in my case I tried 'test' 3) wait ... ASSERTION FAILED: !childItemWithTarget(child->target()) (../../../../WebCore/history/HistoryItem.cpp:381 void WebCore::HistoryItem::addChildItem(WTF::PassRefPtr<WebCore::HistoryItem>)) Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb46ef920 (LWP 2408)] 0xb6f76004 in WebCore::HistoryItem::addChildItem (this=0x8f56710, child={m_ptr = 0xbf986404}) at ../../../../WebCore/history/HistoryItem.cpp:381 381 ASSERT(!childItemWithTarget(child->target())); (gdb) bt #0 0xb6f76004 in WebCore::HistoryItem::addChildItem (this=0x8f56710, child={m_ptr = 0xbf986404}) at ../../../../WebCore/history/HistoryItem.cpp:381 #1 0xb70758c3 in WebCore::FrameLoader::createHistoryItemTree (this=0x8d79b3c, targetFrame=0x904bd80, clipAtTarget=true) at ../../../../WebCore/loader/FrameLoader.cpp:4313 #2 0xb70758a4 in WebCore::FrameLoader::createHistoryItemTree (this=0x88f2c7c, targetFrame=0x904bd80, clipAtTarget=true) at ../../../../WebCore/loader/FrameLoader.cpp:4313 #3 0xb7075b15 in WebCore::FrameLoader::addBackForwardItemClippedAtTarget (this=0x904bdac, doClip=true) at ../../../../WebCore/loader/FrameLoader.cpp:4291 #4 0xb707627f in WebCore::FrameLoader::updateHistoryForStandardLoad (this=0x904bdac) at ../../../../WebCore/loader/FrameLoader.cpp:4705 #5 0xb708ad8d in WebCore::FrameLoader::transitionToCommitted (this=0x904bdac, cachedPage={m_ptr = 0xbf986748}) at ../../../../WebCore/loader/FrameLoader.cpp:2909 #6 0xb708bb2d in WebCore::FrameLoader::commitProvisionalLoad (this=0x904bdac, prpCachedPage={m_ptr = 0xbf986798}) at ../../../../WebCore/loader/FrameLoader.cpp:2787 #7 0xb7061ca6 in WebCore::DocumentLoader::commitIfReady (this=0x8ed29d0) at ../../../../WebCore/loader/DocumentLoader.cpp:339 #8 0xb70650b3 in WebCore::DocumentLoader::finishedLoading (this=0x8ed29d0) at ../../../../WebCore/loader/DocumentLoader.cpp:346 #9 0xb707c6a1 in WebCore::FrameLoader::finishedLoading (this=0x904bdac) at ../../../../WebCore/loader/FrameLoader.cpp:3097 #10 0xb70a6c44 in WebCore::MainResourceLoader::didFinishLoading (this=0x8bc6b08) at ../../../../WebCore/loader/MainResourceLoader.cpp:379 #11 0xb70a8168 in WebCore::MainResourceLoader::continueAfterContentPolicy (this=0x8bc6b08, contentPolicy=WebCore::PolicyUse, r=@0x8bc6b20) at ../../../../WebCore/loader/MainResourceLoader.cpp:265 #12 0xb70a82cd in WebCore::MainResourceLoader::continueAfterContentPolicy (this=0x8bc6b08, policy=WebCore::PolicyUse) at ../../../../WebCore/loader/MainResourceLoader.cpp:279 #13 0xb70a8306 in WebCore::MainResourceLoader::callContinueAfterContentPolicy (argument=0x8bc6b08, policy=WebCore::PolicyUse) at ../../../../WebCore/loader/MainResourceLoader.cpp:271 #14 0xb706c125 in WebCore::PolicyCheck::call (this=0xbf9869d4, action=WebCore::PolicyUse) at ../../../../WebCore/loader/FrameLoader.cpp:5013 #15 0xb7070f64 in WebCore::FrameLoader::continueAfterContentPolicy (this=0x904bdac, policy=WebCore::PolicyUse) at ../../../../WebCore/loader/FrameLoader.cpp:3367 #16 0xb735bbee in WebCore::FrameLoaderClientQt::slotCallPolicyFunction (this=0x9460110, action=0) at ../../../../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:197 #17 0xb735bd9d in WebCore::FrameLoaderClientQt::dispatchDecidePolicyForMIMEType (this=0x9460110, function=0xb7070f12 <WebCore::FrameLoader::continueAfterContentPolicy(WebCore::PolicyAction)>, MIMEType=@0x8bc6b50) at ../../../../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:893 #18 0xb70729e3 in WebCore::FrameLoader::checkContentPolicy (this=0x904bdac, MIMEType=@0x8bc6b50, function=0xb70a82e2 <WebCore::MainResourceLoader::callContinueAfterContentPolicy(void*, WebCore::PolicyAction)>, argument=0x8bc6b08) at ../../../../WebCore/loader/FrameLoader.cpp:2481 #19 0xb70a71fa in WebCore::MainResourceLoader::didReceiveResponse (this=0x8bc6b08, r=@0xbf986bfc) at ../../../../WebCore/loader/MainResourceLoader.cpp:331 #20 0xb70a5dfb in WebCore::MainResourceLoader::handleEmptyLoad (this=0x8bc6b08, url=@0xbf986df4, forURLScheme=false) at ../../../../WebCore/loader/MainResourceLoader.cpp:424 #21 0xb70a6402 in WebCore::MainResourceLoader::loadNow (this=0x8bc6b08, r=@0xbf986df4) at ../../../../WebCore/loader/MainResourceLoader.cpp:485 #22 0xb70a6a8d in WebCore::MainResourceLoader::load (this=0x8bc6b08, r=@0x8ed2be8, substituteData=@0x8ed2adc) at ../../../../WebCore/loader/MainResourceLoader.cpp:523 #23 0xb7061a25 in WebCore::DocumentLoader::startLoadingMainResource (this=0x8ed29d0, identifier=106) at ../../../../WebCore/loader/DocumentLoader.cpp:819 #24 0xb7076771 in WebCore::FrameLoader::continueLoadAfterWillSubmitForm (this=0x904bdac) at ../../../../WebCore/loader/FrameLoader.cpp:3396 #25 0xb707bcc2 in WebCore::FrameLoader::continueLoadAfterNavigationPolicy (this=0x904bdac, formState={m_ptr = 0xbf9870a4}, shouldContinue=true) ---Type <return> to continue, or q <return> to quit--- at ../../../../WebCore/loader/FrameLoader.cpp:4039 #26 0xb707bd1d in WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy (argument=0x904bdac, request=@0xbf98712c, formState={m_ptr = 0xbf9870f8}, shouldContinue=true) at ../../../../WebCore/loader/FrameLoader.cpp:3970 #27 0xb706fa7b in WebCore::PolicyCheck::call (this=0xbf98712c, shouldContinue=true) at ../../../../WebCore/loader/FrameLoader.cpp:5002 #28 0xb7071267 in WebCore::FrameLoader::continueAfterNavigationPolicy (this=0x904bdac, policy=WebCore::PolicyUse) at ../../../../WebCore/loader/FrameLoader.cpp:3963 #29 0xb735bbee in WebCore::FrameLoaderClientQt::slotCallPolicyFunction (this=0x9460110, action=0) at ../../../../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:197 #30 0xb735c430 in WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction (this=0x9460110, function=0xb7071060 <WebCore::FrameLoader::continueAfterNavigationPolicy(WebCore::PolicyAction)>, action=@0xbf987450, request=@0x8ed2be8) at ../../../../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:949 #31 0xb707466e in WebCore::FrameLoader::checkNavigationPolicy (this=0x904bdac, request=@0x8ed2be8, loader=0x8ed29d0, formState={m_ptr = 0xbf987550}, function=0xb707bcca <WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy(void*, WebCore::ResourceRequest const&, WTF::PassRefPtr<WebCore::FormState>, bool)>, argument=0x904bdac) at ../../../../WebCore/loader/FrameLoader.cpp:3932 #32 0xb7077224 in WebCore::FrameLoader::loadWithDocumentLoader (this=0x904bdac, loader=0x8ed29d0, type=WebCore::FrameLoadTypeStandard, prpFormState= {m_ptr = 0xbf98764c}) at ../../../../WebCore/loader/FrameLoader.cpp:2379 #33 0xb7077e27 in WebCore::FrameLoader::loadWithNavigationAction (this=0x904bdac, request=@0xbf9876d8, action=@0xbf987778, lockHistory=true, type=WebCore::FrameLoadTypeStandard, formState={m_ptr = 0xbf9877b0}) at ../../../../WebCore/loader/FrameLoader.cpp:2313 #34 0xb70794e4 in WebCore::FrameLoader::loadURL (this=0x904bdac, newURL=@0xbf987924, referrer=@0xbf9878c8, frameName=@0xbf9879c4, lockHistory=true, newLoadType=WebCore::FrameLoadTypeStandard, event={m_ptr = 0xbf9878ac}, prpFormState={m_ptr = 0xbf9878a8}) at ../../../../WebCore/loader/FrameLoader.cpp:2256 #35 0xb707b379 in WebCore::FrameLoader::loadFrameRequest (this=0x904bdac, request=@0xbf987924, lockHistory=true, lockBackForwardList=false, event= {m_ptr = 0xbf9879cc}, formState={m_ptr = 0xbf9879c8}) at ../../../../WebCore/loader/FrameLoader.cpp:2197 #36 0xb7082e7d in WebCore::FrameLoader::urlSelected (this=0x904bdac, request=@0xbf987a50, passedTarget=@0xbf987af4, triggeringEvent={m_ptr = 0xbf987af0}, lockHistory=true, lockBackForwardList=false, userGesture=false) at ../../../../WebCore/loader/FrameLoader.cpp:411 #37 0xb7083105 in WebCore::FrameLoader::changeLocation (this=0x904bdac, url=@0xbf987c28, referrer=@0x8bc2b10, lockHistory=true, lockBackForwardList=false, userGesture=false, refresh=false) at ../../../../WebCore/loader/FrameLoader.cpp:393 #38 0xb7083415 in WebCore::FrameLoader::redirectionTimerFired (this=0x904bdac) at ../../../../WebCore/loader/FrameLoader.cpp:1457 #39 0xb706ba65 in WebCore::Timer<WebCore::FrameLoader>::fired (this=0x904bf4c) at ../../../../WebCore/platform/Timer.h:98 #40 0xb71afbc3 in WebCore::ThreadTimers::fireTimers (this=0x88ec5d0, fireTime=1247027052.368557, firingTimers=@0xbf987d14) at ../../../../WebCore/platform/ThreadTimers.cpp:111 #41 0xb71b0778 in WebCore::ThreadTimers::sharedTimerFiredInternal (this=0x88ec5d0) at ../../../../WebCore/platform/ThreadTimers.cpp:141 #42 0xb71b07f7 in WebCore::ThreadTimers::sharedTimerFired () at ../../../../WebCore/platform/ThreadTimers.cpp:122 #43 0xb734be04 in WebCore::SharedTimerQt::timerEvent (this=0x88ec690, ev=0xbf98820c) at ../../../../WebCore/platform/qt/SharedTimerQt.cpp:105 #44 0xb501a8c6 in QObject::event (this=0x88ec690, e=0xbf98820c) at kernel/qobject.cpp:1073 #45 0xb5299f37 in QApplicationPrivate::notify_helper (this=0x872c550, receiver=0x88ec690, e=0xbf98820c) at kernel/qapplication.cpp:4057 #46 0xb529a2ac in QApplication::notify (this=0xbf98857c, receiver=0x88ec690, e=0xbf98820c) at kernel/qapplication.cpp:3604 #47 0xb5002ad4 in QCoreApplication::notifyInternal (this=0xbf98857c, receiver=0x88ec690, event=0xbf98820c) at kernel/qcoreapplication.cpp:610 #48 0xb734559b in QCoreApplication::sendEvent (receiver=0x88ec690, event=0xbf98820c) at /usr/include/QtCore/qcoreapplication.h:213 #49 0xb503d4a4 in QTimerInfoList::activateTimers (this=0x8735984) at kernel/qeventdispatcher_unix.cpp:572 #50 0xb503ac6a in timerSourceDispatch (source=0x8735950) at kernel/qeventdispatcher_glib.cpp:164 ---Type <return> to continue, or q <return> to quit---label:todo #51 0xb48e5b88 in IA__g_main_context_dispatch (context=0x8734c90) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814 #52 0xb48e90eb in g_main_context_iterate (context=0x8734c90, block=1, dispatch=1, self=0x8732610) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448 #53 0xb48e9268 in IA__g_main_context_iteration (context=0x8734c90, may_block=1) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2511 #54 0xb5039d66 in QEventDispatcherGlib::processEvents (this=0x8732370, flags={i = -1080523884}) at kernel/qeventdispatcher_glib.cpp:324 #55 0xb5366174 in QGuiEventDispatcherGlib::processEvents (this=0x8732370, flags={i = -1080523836}) at kernel/qguieventdispatcher_glib.cpp:202 #56 0xb4fff0f0 in QEventLoop::processEvents (this=0xbf988458, flags={i = -1080523764}) at kernel/qeventloop.cpp:149 #57 0xb4fff34b in QEventLoop::exec (this=0xbf988458, flags={i = -1080523680}) at kernel/qeventloop.cpp:200 #58 0xb5003429 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888 #59 0xb5299c50 in QApplication::exec () at kernel/qapplication.cpp:3526 #60 0x08059408 in main (argc=Cannot access memory at address 0x0
Attachments
Antonio Gomes
Comment 1 2009-10-21 20:42:54 PDT
kenneth, you landed a fix for this a long time ago , right ?
Kenneth Rohde Christiansen
Comment 2 2009-10-26 10:18:58 PDT
Uh I dont remember sorry.
Antonio Gomes
Comment 3 2009-10-27 05:43:21 PDT
i am pretty sure it does. and since it is not reproducible any longer so i am marking it as fixed.
Note You need to log in before you can comment on or make changes to this bug.