Skip to content

Prevent layershell from crashing when rearranging when we shouldn't

Aleix Pol Gonzalez requested to merge work/layershell-crash into master

Here's the backtrace that prompted the MR:

#0  QVector<KWin::VirtualDesktop*>::count() const (this=0x10) at /home/apol/devel/kde5/include/QtCore/qvector.h:241
#1  KWin::VirtualDesktopManager::count() const (this=0x0) at /home/apol/devel/frameworks/kwin/src/virtualdesktops.h:687
#2  KWin::Workspace::updateClientArea(bool) (this=0x0, force=false) at /home/apol/devel/frameworks/kwin/src/workspace.cpp:2089
#3  0x00007fef12a180b3 in KWin::LayerShellV1Integration::rearrange() (this=<optimized out>) at /home/apol/devel/frameworks/kwin/src/layershellv1integration.cpp:208
#4  0x00007fef13094806 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffcf9674f70, r=0x5569d2981a40, this=0x5569d2981e50) at ../../include/QtCore/../../../../../devel/frameworks/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:398
#5  doActivate<false>(QObject*, int, void**) (sender=0x5569d2981dc0, signal_index=3, argv=argv@entry=0x7ffcf9674f70) at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/kernel/qobject.cpp:3886
#6  0x00007fef1308db60 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7fef1332d280 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffcf9674f70) at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/kernel/qobject.cpp:3946
#7  0x00007fef1309871a in QTimer::timeout(QTimer::QPrivateSignal) (this=<optimized out>, _t1=...) at .moc/moc_qtimer.cpp:205

Merge request reports