Fix a crash on x11 on closing laptop lid
On x11 when multiscreen is enabled often kwin crashes on laptop lid close, for two reasons: * m_outputLayer going dangling in RenderLayer: fixed by using a QPointer * m_activeOutput going dangling in Workspace For the latter, the output disabling was done correctly, but x11client did set the old deleted output again in X11Client::moveResizeInternal This is fixed by moving desktopResized() at the bottom of Workspace::slotOutputDisabled() after the reassign of outputs to the toplevels
This commit is contained in:
parent
cb877595b2
commit
8947ece98f
1 changed files with 4 additions and 1 deletions
|
@ -8,8 +8,11 @@
|
|||
|
||||
#include "kwin_export.h"
|
||||
|
||||
#include "outputlayer.h"
|
||||
|
||||
#include <QMap>
|
||||
#include <QObject>
|
||||
#include <QPointer>
|
||||
#include <QRegion>
|
||||
|
||||
namespace KWin
|
||||
|
@ -84,7 +87,7 @@ private:
|
|||
QRegion m_repaints;
|
||||
QRect m_boundingRect;
|
||||
QRect m_geometry;
|
||||
OutputLayer *m_outputLayer = nullptr;
|
||||
QPointer<OutputLayer> m_outputLayer;
|
||||
RenderLayer *m_superlayer = nullptr;
|
||||
QList<RenderLayer *> m_sublayers;
|
||||
bool m_effectiveVisible = true;
|
||||
|
|
Loading…
Reference in a new issue