<table><tr><td style="">ngraham requested changes to this revision.<br />ngraham added a comment.<br />This revision now requires changes to proceed.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D27669">View Revision</a></tr></table><br /><div><div><p>Now all of my QtWidgets apps are crashing with a backtrace like this one:</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">Application: Spectacle (spectacle), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
29        return SYSCALL_CANCEL (poll, fds, nfds, timeout);
[Current thread is 1 (Thread 0x7f4a76a76800 (LWP 22804))]

Thread 1 (Thread 0x7f4a76a76800 (LWP 22804)):
[KCrash Handler]
#6  QRasterPaintEngine::transformChanged (this=0x7f4a700076c0) at painting/qpaintengine_raster.cpp:941
#7  0x00007f4a795f4e5a in QPainterPrivate::updateMatrix (this=0x7ffdb8f85530, this@entry=0x5628c5e23790) at painting/qpainter.cpp:664
#8  0x00007f4a795f7e31 in QPainter::setWorldTransform (this=this@entry=0x7ffdb8f85660, matrix=..., combine=combine@entry=false) at painting/qpainter.cpp:8389
#9  0x00007f4a79f6c7a6 in QGraphicsDropShadowEffect::draw (this=<optimized out>, painter=0x7ffdb8f85660) at effects/qgraphicseffect.cpp:1067
#10 0x00007f4a79c09f8e in QWidgetPrivate::drawWidget (this=0x5628c5b48b60, pdev=0x5628c5cbb720, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5301
#11 0x00007f4a79c0a883 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at ../../include/QtCore/../../src/corelib/tools/qpoint.h:124
#12 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=0, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#13 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=1, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#14 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=2, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#15 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=3, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#16 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=4, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#17 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=5, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#18 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=6, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#19 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=7, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#20 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=8, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#21 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=11, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#22 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5ae4910, pdev=0x5628c5cbb720, siblings=..., index=13, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#23 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x5628c5ae4910, pdev=pdev@entry=0x5628c5cbb720, siblings=..., index=14, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#24 0x00007f4a79c0919c in QWidgetPrivate::drawWidget (this=0x5628c5ae4910, pdev=0x5628c5cbb720, rgn=..., offset=..., flags=..., sharedPainter=<optimized out>, repaintManager=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qlist.h:176
#25 0x00007f4a79c0a883 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5b786d0, pdev=0x5628c5cbb720, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at ../../include/QtCore/../../src/corelib/tools/qpoint.h:124
#26 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=0x5628c5b786d0, pdev=0x5628c5cbb720, siblings=..., index=0, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#27 0x00007f4a79c0a766 in QWidgetPrivate::paintSiblingsRecursive (this=this@entry=0x5628c5b786d0, pdev=pdev@entry=0x5628c5cbb720, siblings=..., index=1, rgn=..., offset=..., flags=..., sharedPainter=0x0, repaintManager=0x5628c5c8dbb0) at kernel/qwidget.cpp:5589
#28 0x00007f4a79c0919c in QWidgetPrivate::drawWidget (this=this@entry=0x5628c5b786d0, pdev=0x5628c5cbb720, rgn=..., offset=..., flags=..., flags@entry=..., sharedPainter=sharedPainter@entry=0x0, repaintManager=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qlist.h:176
#29 0x00007f4a79be08a9 in QWidgetRepaintManager::paintAndFlush (this=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qpoint.h:122
#30 0x00007f4a79be119e in QWidgetRepaintManager::sync (this=0x5628c5c8dbb0, exposedWidget=0x5628c5b48910, exposedRegion=...) at kernel/qwidgetrepaintmanager.cpp:749
#31 0x00007f4a79c2dbb4 in QWidgetWindow::handleExposeEvent (this=<optimized out>, event=0x7ffdb8f872f0) at ../../include/QtGui/../../src/gui/kernel/qevent.h:468
#32 0x00007f4a79c2e778 in QWidgetWindow::event (event=0x7ffdb8f872f0, this=0x5628c5cbd190) at kernel/qwidgetwindow.cpp:342
#33 QWidgetWindow::event (this=0x5628c5cbd190, event=0x7ffdb8f872f0) at kernel/qwidgetwindow.cpp:238
#34 0x00007f4a79bcdcaf in QApplicationPrivate::notify_helper (this=this@entry=0x5628c5a03af0, receiver=receiver@entry=0x5628c5cbd190, e=e@entry=0x7ffdb8f872f0) at kernel/qapplication.cpp:3684
#35 0x00007f4a79bd6df0 in QApplication::notify (this=0x7ffdb8f87a90, receiver=0x5628c5cbd190, e=0x7ffdb8f872f0) at kernel/qapplication.cpp:3430
#36 0x00007f4a78f20002 in QCoreApplication::notifyInternal2 (receiver=0x5628c5cbd190, event=0x7ffdb8f872f0) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:153
#37 0x00007f4a7933a83f in QGuiApplicationPrivate::processExposeEvent (e=0x5628c5c42ff0) at kernel/qguiapplication.cpp:3188
#38 0x00007f4a7933aa6b in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x5628c5c42ff0) at kernel/qguiapplication.cpp:2009
#39 0x00007f4a7931453b in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1163
#40 0x00007f4a74bc1a6a in xcbSourceDispatch (source=source@entry=0x5628c5ac7c80) at qxcbeventdispatcher.cpp:105
#41 0x00007f4a77421048 in g_main_dispatch (context=0x7f4a70005000) at ../glib/gmain.c:3216
#42 g_main_context_dispatch (context=context@entry=0x7f4a70005000) at ../glib/gmain.c:3881
#43 0x00007f4a774213d0 in g_main_context_iterate (context=context@entry=0x7f4a70005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3954
#44 0x00007f4a7742145f in g_main_context_iteration (context=0x7f4a70005000, may_block=may_block@entry=1) at ../glib/gmain.c:4015
#45 0x00007f4a78f76bee in QEventDispatcherGlib::processEvents (this=0x5628c5ad26f0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#46 0x00007f4a78f1eb9b in QEventLoop::exec (this=this@entry=0x7ffdb8f875d0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#47 0x00007f4a78f26972 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#48 0x00005628c5925bbb in ?? ()
#49 0x00007f4a7aa10ceb in __libc_start_main (main=0x5628c5923d90, argc=1, argv=0x7ffdb8f87da8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdb8f87d98) at ../csu/libc-start.c:308
#50 0x00005628c592631a in ?? ()
[Inferior 1 (process 22804) detached]</pre></div>

<p>It only happens when I'm running with this patch.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R31 Breeze</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D27669">https://phabricator.kde.org/D27669</a></div></div><br /><div><strong>To: </strong>cblack, Plasma, Breeze, VDG, hpereiradacosta, davidre, ngraham<br /><strong>Cc: </strong>maartens, abstractdevelop, IlyaBizyaev, davidre, davidedmundson, hpereiradacosta, ngraham, manueljlin, niccolove, ndavis, plasma-devel, Orage, LeGast00n, The-Feren-OS-Dev, cblack, jraleigh, zachus, fbampaloukas, ragreen, ZrenBot, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart<br /></div>