Summary: | [proposed patch] Twitter/OpenDesktop plasmoids crashes Plasma (setGeometry, Plasma::ScrollWidgetPrivate::adjustScrollbars loop) (QtCurve/Bespin style) | ||
---|---|---|---|
Product: | [Unmaintained] plasma4 | Reporter: | Giuseppe Bilotta <giuseppe.bilotta> |
Component: | general | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | andresbajotierra, asraniel, brunoabinader, danitipp, finex, gokcen.eraslan, jacob.hart+kde, ken, markotahal, papylhomme, pietranera+kdebugs, rahul, rdieter, verne77 |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | Plasma::ScrollWidget segfault fix |
Description
Giuseppe Bilotta
2009-08-07 01:29:23 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. @Giuseppe: don't attach the backtrace, paste into a comment. Thanks 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} Same problem here. Version: KDE 4.3.0 OS: Linux Installed from: Gentoo standard portage tree same here, with several plasmoids (microblogging, opendesktop, ecc...) KDE 4.3.0 Linux Gentoo ~ portage tree *** Bug 204108 has been marked as a duplicate of this bug. *** 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. Bug confirmed here. Trying to get top of stack with gdb now (about 13500 frames). 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. Crash still there with KDE 4.3.4 and Qt-4.6.0. Gentoo here as well. 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? 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 Confirmed that crash only occurs with the bespin theme. - Are you all using the Bespin widget theme ? If that is the case this should be redirected to its author.. 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 *** This bug has been confirmed by popular vote. *** @Bruno: could you try to use the Oxygen widget style and check if Plasma also crashes ? Thanks Hi Dario, I've switched the widget style to 'Oxygen' and now both the plasmoid I'm developing and microblogging are working properly. Mh... then it could be a problem of QtCurve/Bespin + Preferred sizehint Thanks for checking *** Bug 202520 has been marked as a duplicate of this bug. *** 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).
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 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 *** Bug 228478 has been marked as a duplicate of this bug. *** |