Bug 202890 - [proposed patch] Twitter/OpenDesktop plasmoids crashes Plasma (setGeometry, Plasma::ScrollWidgetPrivate::adjustScrollbars loop) (QtCurve/Bespin style)
Summary: [proposed patch] Twitter/OpenDesktop plasmoids crashes Plasma (setGeometry, P...
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Debian testing Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 202520 204108 228478 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-08-07 01:29 UTC by Giuseppe Bilotta
Modified: 2010-07-31 13:30 UTC (History)
14 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Plasma::ScrollWidget segfault fix (507 bytes, patch)
2009-12-15 17:01 UTC, Bruno Abinader
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Giuseppe Bilotta 2009-08-07 01:29:23 UTC
Version:            (using KDE 4.3.0)
OS:                Linux
Installed from:    Debian testing/unstable Packages

The microblogging (twitter) plasmoid makes Plasma crash with a segmentation fault. The problem is reproducible using plasmoidviewer as well.
Comment 1 Giuseppe Bilotta 2009-08-07 01:35:51 UTC
gdb traps the fault here:

QGridLayoutRowData::distributeMultiCells (this=0x9d14a8) at graphicsview/qgridlayoutengine.cpp:170
170     graphicsview/qgridlayoutengine.cpp: No such file or directory.
        in graphicsview/qgridlayoutengine.cpp

I'll try to attach a backtrace, although it's very long.
Comment 2 FiNeX 2009-08-07 11:24:18 UTC
@Giuseppe: don't attach the backtrace, paste into a comment. Thanks
Comment 3 Giuseppe Bilotta 2009-08-07 11:35:56 UTC
The trace is _very_ long so I'm only pasting the first 100 frames or so. Apparently, the widget gets stuck in a loop trying to resize between two different sizes (maybe due to the scrollbar being created/deleted/created/deleted/etc).

Here it si:

#0  QGridLayoutRowData::distributeMultiCells (this=0x9d14a8) at graphicsview/qgridlayoutengine.cpp:170
No locals.
#1  0x00007ffff668d0e6 in QGridLayoutEngine::ensureColumnAndRowData (this=0x9d13f8, styleInfo=...) at graphicsview/qgridlayoutengine.cpp:1511
No locals.
#2  0x00007ffff668db88 in QGridLayoutEngine::sizeHint (this=0x9d14a8, styleInfo=..., which=6339008) at graphicsview/qgridlayoutengine.cpp:1064
No locals.
#3  0x00007ffff6694fd7 in QGraphicsGridLayout::sizeHint (this=<value optimized out>, which=Qt::MaximumSize, constraint=...)
    at graphicsview/qgraphicsgridlayout.cpp:629
        d = 0x9d12f0
        left = 9
        top = 9
        right = 9
        bottom = 9
#4  0x00007ffff667b076 in QGraphicsLayoutItemPrivate::effectiveSizeHints (this=0x9d12f0, constraint=...) at graphicsview/qgraphicslayoutitem.cpp:149
        q = 0x9ce580
        minS = @0x9d1348
#5  0x00007ffff667b65a in QGraphicsLayoutItem::effectiveSizeHint (this=<value optimized out>, which=<value optimized out>, constraint=...)
    at graphicsview/qgraphicslayoutitem.cpp:736
No locals.
#6  0x00007ffff667b7e5 in QGraphicsLayoutItem::setGeometry (this=0x9d14a8, rect=...) at graphicsview/qgraphicslayoutitem.cpp:649
        d = 0x9d12f0
#7  0x00007ffff6695067 in QGraphicsGridLayout::setGeometry (this=0x9d14a8, rect=...) at graphicsview/qgraphicsgridlayout.cpp:601
        d = 0x9d12f0
        effectiveRect = {xp = 0, yp = 7.2911220195563975e-304, w = -0, h = 6.9533553938238032e-310}
        left = <value optimized out>
        top = <value optimized out>
        right = <value optimized out>
        bottom = <value optimized out>
        visualDir = <value optimized out>
#8  0x00007ffff667a097 in QGraphicsLayout::activate (this=0x9ce580) at graphicsview/qgraphicslayout.cpp:269
        d = <value optimized out>
        parentItem = 0x9d02e0
#9  0x00007ffff74f8bb7 in Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:85
No locals.
#10 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#11 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff802b10)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#12 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff802b10) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#13 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff802b10) at kernel/qapplication.cpp:4021
        res = true
#14 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff802b10) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#15 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff802b10) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff802b10, 0x7fffff802a6f}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#16 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#17 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xac1520}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 167, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 142, ht = 18}
#18 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#19 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#20 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#21 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#22 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff803320)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#23 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff803320) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#24 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff803320) at kernel/qapplication.cpp:4021
        res = true
#25 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff803320) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#26 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff803320) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff803320, 0x7fffff80327f}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#27 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#28 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xba73d0}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 142, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 167, ht = 18}
#29 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#30 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#31 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#32 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#33 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff803b30)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#34 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff803b30) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#35 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff803b30) at kernel/qapplication.cpp:4021
        res = true
#36 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff803b30) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#37 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff803b30) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff803b30, 0x7fffff803a8f}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#38 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#39 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xb8e020}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 167, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 142, ht = 18}
#40 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#41 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#42 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#43 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#44 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff804340)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#45 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff804340) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#46 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff804340) at kernel/qapplication.cpp:4021
        res = true
#47 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff804340) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#48 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff804340) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff804340, 0x7fffff80429f}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#49 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#50 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xb7ffa0}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 142, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 167, ht = 18}
#51 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#52 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#53 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#54 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#55 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff804b50)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#56 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff804b50) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#57 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff804b50) at kernel/qapplication.cpp:4021
        res = true
#58 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff804b50) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#59 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff804b50) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff804b50, 0x7fffff804aaf}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#60 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#61 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xb81920}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 167, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 142, ht = 18}
#62 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#63 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#64 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#65 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#66 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff805360)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#67 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff805360) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#68 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff805360) at kernel/qapplication.cpp:4021
        res = true
#69 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff805360) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#70 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff805360) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff805360, 0x7fffff8052bf}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#71 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#72 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xb76be0}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 142, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 167, ht = 18}
#73 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#74 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#75 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#76 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#77 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff805b70)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#78 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff805b70) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#79 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff805b70) at kernel/qapplication.cpp:4021
        res = true
#80 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff805b70) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#81 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff805b70) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff805b70, 0x7fffff805acf}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#82 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#83 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xb963f0}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 167, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 142, ht = 18}
#84 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#85 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#86 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#87 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#88 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff806380)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#89 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff806380) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#90 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff806380) at kernel/qapplication.cpp:4021
        res = true
#91 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff806380) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#92 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff806380) at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff806380, 0x7fffff8062df}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#93 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#94 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0xb8e8f0}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 142, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 167, ht = 18}
#95 0x00007ffff667e7c9 in QGraphicsWidget::resize (this=0xb21b80, size=...) at graphicsview/qgraphicswidget.cpp:341
No locals.
#96 0x00007ffff74f8c2b in QGraphicsWidget::resize (this=0x9d1290) at /usr/include/qt4/QtGui/qgraphicswidget.h:107
No locals.
#97 Plasma::ScrollWidgetPrivate::adjustScrollbars (this=0x9d1290) at ../../plasma/widgets/scrollwidget.cpp:86
No locals.
#98 0x00007ffff74f83fd in Plasma::ScrollWidget::eventFilter (this=0x9d02c0, watched=0x9d14d8, event=0x60b9c0) at ../../plasma/widgets/scrollwidget.cpp:271
No locals.
#99 0x00007ffff6c237b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0xb21b80, event=0x7fffff806b90)
    at kernel/qcoreapplication.cpp:726
        obj = 0x9d14a8
        i = <value optimized out>
#100 0x00007ffff609c77c in QApplicationPrivate::notify_helper (this=0x628ff0, receiver=0xb21b80, e=0x7fffff806b90) at kernel/qapplication.cpp:4052
        consumed = <value optimized out>
#101 0x00007ffff60a480a in QApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, e=0x7fffff806b90) at kernel/qapplication.cpp:4021
        res = true
#102 0x00007ffff79e8b2b in KApplication::notify (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff806b90) at ../../kdeui/kernel/kapplication.cpp:302
No locals.
#103 0x00007ffff6c2449c in QCoreApplication::notifyInternal (this=0x7fffffffd890, receiver=0xb21b80, event=0x7fffff806b90)
    at kernel/qcoreapplication.cpp:610
        result = false
        cbdata = {0xb21b80, 0x7fffff806b90, 0x7fffff806aef}
        threadData = 0x60fd80
        returnValue = <value optimized out>
#104 0x00007ffff6680da7 in QCoreApplication::sendEvent (this=0xb21b80, rect=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
No locals.
#105 QGraphicsWidget::setGeometry (this=0xb21b80, rect=...) at graphicsview/qgraphicswidget.cpp:420
        re = {<QGraphicsSceneEvent> = {<QEvent> = {_vptr.QEvent = 0x7ffff6aafb50, d = 0x0, t = 181, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, 
            d_ptr = 0x9589e0}, <No data fields>}
        wd = 0x93f960
        d = 0x93fb20
        newGeom = {xp = 0, yp = 0, w = 167, h = 18}
        oldPos = {xp = 0, yp = 0}
        oldSize = {wd = 142, ht = 18}
Comment 4 Michaël Lhomme 2009-08-25 11:55:46 UTC
Same problem here.

Version:           KDE 4.3.0
OS:                Linux
Installed from:    Gentoo standard portage tree
Comment 5 Fabio Coatti 2009-08-27 15:10:29 UTC
same here, with several plasmoids (microblogging, opendesktop, ecc...)
KDE 4.3.0
Linux
Gentoo ~ portage tree
Comment 6 Dario Andres 2009-09-04 16:40:46 UTC
*** Bug 204108 has been marked as a duplicate of this bug. ***
Comment 7 jhart 2009-09-08 02:33:18 UTC
Also seeing this with an applet I'm developing that uses Plasma::ScrollWidget.  I believe it to be a related problem, since if I remove the ScrollWidget everything is fine and I cannot reproduce the crash.

The problem occurs when resizing a Plasma::ScrollWidget.  I get one or two lines output on the console like the following

QGraphicsGridLayout::itemAt: invalid index 1
QGraphicsGridLayout::itemAt: invalid index 2

When the bug triggers it dumps hundreds of the lines above all at once and the applet crashes with SIGSEGV.
Comment 8 Ken Rushia 2009-09-13 17:19:36 UTC
Bug confirmed here. Trying to get top of stack with gdb now (about 13500 frames).
Comment 9 Ken Rushia 2009-11-12 00:24:15 UTC
Crash still present in KDE 4.3.3 and Qt 4.5.3. Was using Ubuntu before, now Gentoo. Also, this is the same as 202520.
Comment 10 Rahul Jain 2009-12-10 01:35:27 UTC
Crash still there with KDE 4.3.4 and Qt-4.6.0. Gentoo here as well.
Comment 11 Fabio Coatti 2009-12-10 09:44:04 UTC
In the same situation (kde 4.3.4, qt 4.6.0, gentoo) on two machines (32 and 64 bit) plasmoids works just fine; have you recompiled dev-python/PyQt4 after the installation of newer qt?
Comment 12 Michaël Lhomme 2009-12-10 10:32:45 UTC
Problem still present, but with another user everything is fine. After some testing, it seems the crash only occur when I use the bespin theme

Version:           KDE 4.3.4, Qt 4.5.3
OS:                Linux
Installed from:    Gentoo standard portage tree
Comment 13 Rahul Jain 2009-12-10 11:06:46 UTC
Confirmed that crash only occurs with the bespin theme.
Comment 14 Dario Andres 2009-12-14 18:10:43 UTC
- Are you all using the Bespin widget theme ? If that is the case this should be redirected to its author..
Comment 15 Bruno Abinader 2009-12-14 20:30:53 UTC
Like jhart, I'm also developing a plasmoid which uses Plasma::ScrollWidget. However, I've seen that the real problem in fact is when using the "Preferred" size policy. I've removed the "Preferred" size policy code and switched it to a Minimum/Maximum approach, and now the plasmoid doesn't crash anymore. It is important to notice that I'm not using the Bespin widget theme, specs below:

KDE(support/libs/pimlibs/base) version: trunk (r1062418) - Ubuntu 9.10

Using "QtCurve" widget style / "Oxygen" window decoration
Comment 16 Bruno Abinader 2009-12-14 20:33:19 UTC
*** This bug has been confirmed by popular vote. ***
Comment 17 Dario Andres 2009-12-14 20:42:53 UTC
@Bruno: could you try to use the Oxygen widget style and check if Plasma also crashes ? Thanks
Comment 18 Bruno Abinader 2009-12-14 20:47:16 UTC
Hi Dario,

I've switched the widget style to 'Oxygen' and now both the plasmoid I'm developing and microblogging are working properly.
Comment 19 Dario Andres 2009-12-14 20:48:55 UTC
Mh... then it could be a problem of QtCurve/Bespin + Preferred sizehint
Thanks for checking
Comment 20 Jonathan Thomas 2009-12-15 00:33:47 UTC
*** Bug 202520 has been marked as a duplicate of this bug. ***
Comment 21 Bruno Abinader 2009-12-15 17:01:19 UTC
Created attachment 39071 [details]
Plasma::ScrollWidget segfault fix

This is a proposed patch which fixes the segfault when using scrollWidget under certain circumstances (i.e. using "preferred" as unique size policy).
Comment 22 Beat Wolf 2009-12-15 17:55:21 UTC
could you try to push this patch into plasma asap? beta 2 is tagged tomorrow. (i don't know it the patch is correct, but try to get into contact with the right people). try to go into the plasma irc channel or the plasma devel mailing list. thank you
Comment 23 Marco Martin 2009-12-15 22:37:09 UTC
SVN commit 1062764 by mart:

don't do adjustScrollbars more than every 200 msecs
resolves some cyclical relayout crashes and surprisingly enough also some layout estetic problems
BUG:202890


 M  +10 -8     scrollwidget.cpp  
 M  +2 -0      scrollwidget.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1062764
Comment 24 Jonathan Thomas 2010-02-25 18:37:29 UTC
*** Bug 228478 has been marked as a duplicate of this bug. ***