Bug 166555 - khtml does infinite recursion when opening http://derstandard.at/?id=3413801&_artikelIndex=2
Summary: khtml does infinite recursion when opening http://derstandard.at/?id=3413801&...
Status: RESOLVED DUPLICATE of bug 165601
Alias: None
Product: konqueror
Classification: Applications
Component: khtml (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-07-14 18:24 UTC by George Kiagiadakis
Modified: 2008-07-14 20:11 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
The first 122 stack frames of the backtrace (18.38 KB, text/plain)
2008-07-14 18:26 UTC, George Kiagiadakis
Details

Note You need to log in before you can comment on or make changes to this bug.
Description George Kiagiadakis 2008-07-14 18:24:13 UTC
Version:           4.1.60 (using Devel)
Installed from:    Compiled sources
Compiler:          gcc version 4.3.1 (Debian 4.3.1-5) 
OS:                Linux

Trying to open this webpage http://derstandard.at/?id=3413801&_artikelIndex=2 , khtml crashes with segmentation fault without showing the crash handler. A bit of gdb shows up that is doing infinite recursion by indirectly resizing a widget from QWidget::resize().

I reproduced this with akregator 4.0.84, konqueror 4.0.84 (both from debian packages) and konqueror 4.1.60 (kdelibs r832258). The backtrace below is from 4.1.60.

The pattern of the recursion is this (I will attach a bigger bactrace below):

#38 0x00007fd0e386e7b5 in QWidget::resize (this=0x1dee130, s=@0x7ffff0599110) at kernel/qwidget.cpp:5646
#39 0x00007fd0da6f8a70 in QWidget::resize (this=0x1dee130, w=1023, h=150) at /home/gkiagia/qt-copy/include/QtGui/../../src/gui/kernel/qwidget.h:961
#40 0x00007fd0da8c50fd in khtml::RenderWidget::resizeWidget (this=0x17a6098, w=1023, h=150)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_replaced.cpp:262
#41 0x00007fd0da8c5677 in khtml::RenderWidget::layout (this=0x17a6098) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_replaced.cpp:381
#42 0x00007fd0da8dec64 in khtml::RenderPartObject::layout (this=0x17a6098) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_frames.cpp:714
#43 0x00007fd0da6f1525 in khtml::RenderObject::layoutIfNeeded (this=0x17a60a8) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_object.h:455
#44 0x00007fd0da852594 in khtml::RenderBlock::layoutInlineChildren (this=0x17a5fc0, relayoutChildren=false, breakBeforeLine=0)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/bidi.cpp:1438
#45 0x00007fd0da861a21 in khtml::RenderBlock::layoutBlock (this=0x17a5fc0, relayoutChildren=false)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:782
#46 0x00007fd0da8ae00d in khtml::RenderTableCell::layout (this=0x17a5fc0) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_table.cpp:2392
#47 0x00007fd0da6f1525 in khtml::RenderObject::layoutIfNeeded (this=0x17a5fc0) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_object.h:455
#48 0x00007fd0da8b4782 in khtml::RenderTableSection::calcRowHeight (this=0x17a5af8)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_table.cpp:1298
#49 0x00007fd0da8b7929 in khtml::RenderTable::layout (this=0x17a59e8) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_table.cpp:348
#50 0x00007fd0da6f1525 in khtml::RenderObject::layoutIfNeeded (this=0x17a59e8) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_object.h:455
#51 0x00007fd0da860eab in khtml::RenderBlock::layoutBlockChildren (this=0x17a57b8, relayoutChildren=false)
#52 0x00007fd0da861a36 in khtml::RenderBlock::layoutBlock (this=0x17a57b8, relayoutChildren=false)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:784
#53 0x00007fd0da8622f8 in khtml::RenderBlock::layout (this=0x17a57b8) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:685
#54 0x00007fd0da8e2083 in khtml::RenderBody::layout (this=0x17a57b8) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_body.cpp:96
#55 0x00007fd0da6f1525 in khtml::RenderObject::layoutIfNeeded (this=0x17a57b8) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_object.h:455
#56 0x00007fd0da860eab in khtml::RenderBlock::layoutBlockChildren (this=0x17a5650, relayoutChildren=false)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:1505
#57 0x00007fd0da861a36 in khtml::RenderBlock::layoutBlock (this=0x17a5650, relayoutChildren=false)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:784
#58 0x00007fd0da8622f8 in khtml::RenderBlock::layout (this=0x17a5650) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:685
#59 0x00007fd0da6f1525 in khtml::RenderObject::layoutIfNeeded (this=0x17a5650) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_object.h:455
#60 0x00007fd0da860eab in khtml::RenderBlock::layoutBlockChildren (this=0x17a5470, relayoutChildren=true)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:1505
#61 0x00007fd0da861a36 in khtml::RenderBlock::layoutBlock (this=0x17a5470, relayoutChildren=true)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_block.cpp:784
#62 0x00007fd0da8dbfc6 in khtml::RenderCanvas::layout (this=0x17a5470) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/rendering/render_canvas.cpp:187
#63 0x00007fd0da6edbb3 in KHTMLView::layout (this=0x1575aa0) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:969
#64 0x00007fd0da77f830 in DOM::DocumentImpl::updateLayout (this=0x1840430) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/xml/dom_docimpl.cpp:1324
#65 0x00007fd0da77f789 in DOM::DocumentImpl::updateLayout (this=0x18171b0) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/xml/dom_docimpl.cpp:1311
#66 0x00007fd0da98d054 in KJS::DOMNode::getValueProperty (this=0x7fd0e8bc0540, exec=0x7ffff059cc80, token=56)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/ecma/kjs_dom.cpp:352
#67 0x00007fd0da9939b7 in KJS::staticValueGetter<KJS::DOMNode> (exec=0x7ffff059cc80, slot=@0x7ffff059a5b0)
    at /home/gkiagia/kde/src/KDE/kdelibs/kjs/lookup.h:147
#68 0x00007fd0da095ce7 in KJS::PropertySlot::getValue (this=0x7ffff059a5b0, exec=0x7ffff059cc80, originalObject=0x7fd0e8bc0540,
    propertyName=@0x239fc88) at /home/gkiagia/kde/src/KDE/kdelibs/kjs/property_slot.h:46
#69 0x00007fd0da094788 in KJS::JSObject::get (this=0x7fd0e8bc0540, exec=0x7ffff059cc80, propertyName=@0x239fc88)
    at /home/gkiagia/kde/src/KDE/kdelibs/kjs/object.cpp:166
#70 0x00007fd0da0b24ae in KJS::Machine::runBlock (exec=0x7ffff059cc80, codeBlock=@0x239d788, parentExec=0x7ffff059f570) at codes.def:680
#71 0x00007fd0da090946 in KJS::FunctionImp::callAsFunction (this=0x7fd0e8bd50c0, exec=0x7ffff059f570, thisObj=0x7fd0e8bf0100, args=@0x7ffff059d1f0)
    at /home/gkiagia/kde/src/KDE/kdelibs/kjs/function.cpp:143
#72 0x00007fd0da094da3 in KJS::JSObject::call (this=0x7fd0e8bd50c0, exec=0x7ffff059f570, thisObj=0x7fd0e8bf0100, args=@0x7ffff059d1f0)
    at /home/gkiagia/kde/src/KDE/kdelibs/kjs/object.cpp:99
#73 0x00007fd0da0bbe73 in KJS::Machine::runBlock (exec=0x7ffff059f570, codeBlock=@0x23a54e8, parentExec=0x1ffbe30) at codes.def:1206
#74 0x00007fd0da090946 in KJS::FunctionImp::callAsFunction (this=0x7fd0e8bd5040, exec=0x1ffbe30, thisObj=0x7fd0e8bf0100, args=@0x7ffff059f800)
#75 0x00007fd0da094da3 in KJS::JSObject::call (this=0x7fd0e8bd5040, exec=0x1ffbe30, thisObj=0x7fd0e8bf0100, args=@0x7ffff059f800)
    at /home/gkiagia/kde/src/KDE/kdelibs/kjs/object.cpp:99
#76 0x00007fd0da9f282f in KJS::JSEventListener::handleEvent (this=0x23a6180, evt=@0x7ffff059f8b0)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/ecma/kjs_events.cpp:106
#77 0x00007fd0da776fd6 in DOM::DocumentImpl::defaultEventHandler (this=0x18171b0, evt=0x2a8ef50)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/xml/dom_docimpl.cpp:2689
#78 0x00007fd0da79b97b in DOM::NodeImpl::dispatchWindowEvent (this=0x18171c8, _id=26, canBubbleArg=false, cancelableArg=false)
    at /home/gkiagia/kde/src/KDE/kdelibs/khtml/xml/dom_nodeimpl.cpp:565
#79 0x00007fd0da6efc79 in KHTMLView::resizeEvent (this=0x1dee130) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:843
#80 0x00007fd0e386ffe4 in QWidget::event (this=0x1dee130, event=0x7ffff05a0470) at kernel/qwidget.cpp:7073
#81 0x00007fd0e3bac7d5 in QFrame::event (this=0x1dee130, e=0x7ffff05a0470) at widgets/qframe.cpp:657
#82 0x00007fd0e3c379c8 in QAbstractScrollArea::viewportEvent (this=0x1dee130, e=0x7ffff05a0470) at widgets/qabstractscrollarea.cpp:941
#83 0x00007fd0da6e1c17 in KHTMLView::viewportEvent (this=0x1dee130, e=0x7ffff05a0470) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:2111
#84 0x00007fd0e3c3a24a in QAbstractScrollAreaPrivate::viewportEvent (this=0x18388a0, event=0x7ffff05a0470) at widgets/qabstractscrollarea_p.h:102
#85 0x00007fd0e3c3a286 in QAbstractScrollAreaFilter::eventFilter (this=0x1f7ef10, o=0x1d85d10, e=0x7ffff05a0470) at widgets/qabstractscrollarea_p.h:113
#86 0x00007fd0e65226e9 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x1528ce0, receiver=0x1d85d10, event=0x7ffff05a0470)
    at kernel/qcoreapplication.cpp:694
#87 0x00007fd0e3817caf in QApplicationPrivate::notify_helper (this=0x1528ce0, receiver=0x1d85d10, e=0x7ffff05a0470) at kernel/qapplication.cpp:3768
#88 0x00007fd0e3819946 in QApplication::notify (this=0x7ffff0d92830, receiver=0x1d85d10, e=0x7ffff05a0470) at kernel/qapplication.cpp:3739
#89 0x00007fd0e790755a in KApplication::notify (this=0x7ffff0d92830, receiver=0x1d85d10, event=0x7ffff05a0470)
    at /home/gkiagia/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#90 0x00007fd0e652419f in QCoreApplication::notifyInternal (this=0x7ffff0d92830, receiver=0x1d85d10, event=0x7ffff05a0470)
    at kernel/qcoreapplication.cpp:583
#91 0x00007fd0e6527c01 in QCoreApplication::sendEvent (receiver=0x1d85d10, event=0x7ffff05a0470)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#92 0x00007fd0e38a8220 in QWidgetPrivate::setGeometry_sys (this=0x1fae770, x=0, y=0, w=1004, h=591, isMove=true) at kernel/qwidget_x11.cpp:2425
#93 0x00007fd0e386e6c0 in QWidget::setGeometry (this=0x1d85d10, r=@0x7ffff05a0a20) at kernel/qwidget.cpp:5662
#94 0x00007fd0e3c38638 in QAbstractScrollAreaPrivate::layoutChildren (this=0x18388a0) at widgets/qabstractscrollarea.cpp:446
#95 0x00007fd0e3c3876f in QAbstractScrollArea::event (this=0x1dee130, e=0x7ffff05a1370) at widgets/qabstractscrollarea.cpp:855
#96 0x00007fd0e3c3ec37 in QScrollArea::event (this=0x1dee130, e=0x7ffff05a1370) at widgets/qscrollarea.cpp:297
#97 0x00007fd0da6eb6f3 in KHTMLView::event (this=0x1dee130, e=0x7ffff05a1370) at /home/gkiagia/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:524
#98 0x00007fd0e3817cd1 in QApplicationPrivate::notify_helper (this=0x1528ce0, receiver=0x1dee130, e=0x7ffff05a1370) at kernel/qapplication.cpp:3772
#99 0x00007fd0e3819946 in QApplication::notify (this=0x7ffff0d92830, receiver=0x1dee130, e=0x7ffff05a1370) at kernel/qapplication.cpp:3739
#100 0x00007fd0e790755a in KApplication::notify (this=0x7ffff0d92830, receiver=0x1dee130, event=0x7ffff05a1370)
#101 0x00007fd0e652419f in QCoreApplication::notifyInternal (this=0x7ffff0d92830, receiver=0x1dee130, event=0x7ffff05a1370)
    at kernel/qcoreapplication.cpp:583
#102 0x00007fd0e6527c01 in QCoreApplication::sendEvent (receiver=0x1dee130, event=0x7ffff05a1370)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#103 0x00007fd0e38a8220 in QWidgetPrivate::setGeometry_sys (this=0x18388a0, x=1, y=-499898, w=1023, h=591, isMove=false) at kernel/qwidget_x11.cpp:2425
#104 0x00007fd0e386e7b5 in QWidget::resize (this=0x1dee130, s=@0x7ffff05a1690) at kernel/qwidget.cpp:5646
#105 0x00007fd0da6f8a70 in QWidget::resize (this=0x1dee130, w=1023, h=591) at /home/gkiagia/qt-copy/include/QtGui/../../src/gui/kernel/qwidget.h:961
Comment 1 George Kiagiadakis 2008-07-14 18:26:27 UTC
Created attachment 26115 [details]
The first 122 stack frames of the backtrace
Comment 2 Maksim Orlovich 2008-07-14 20:11:01 UTC

*** This bug has been marked as a duplicate of 165601 ***