From 307a9bc5590f6f82b279a611b1f406bbd423687e Mon Sep 17 00:00:00 2001 From: Andrey Butirsky Date: Tue, 28 Jul 2020 19:48:57 +0300 Subject: [PATCH] Avoid crash in KWin on Session leave BUG: 420077 - hunk of original commit e8a1f8ecc seems was lost during a94be708e merge, so restoring it again - add missing check Original Differential Revision: https://phabricator.kde.org/D28889 --- plugins/platforms/drm/drm_output.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/plugins/platforms/drm/drm_output.cpp b/plugins/platforms/drm/drm_output.cpp index aab277923..279fa7edd 100644 --- a/plugins/platforms/drm/drm_output.cpp +++ b/plugins/platforms/drm/drm_output.cpp @@ -118,6 +118,10 @@ bool DrmOutput::showCursor(DrmDumbBuffer *c) bool DrmOutput::showCursor() { + if (m_deleted) { + return false; + } + if (Q_UNLIKELY(m_backend->usesSoftwareCursor())) { qCCritical(KWIN_DRM) << "DrmOutput::showCursor should never be called when software cursor is enabled"; return true; @@ -174,6 +178,9 @@ QMatrix4x4 DrmOutput::matrixDisplay(const QSize &s) const void DrmOutput::updateCursor() { + if (m_deleted) { + return; + } QImage cursorImage = Cursors::self()->currentCursor()->image(); if (cursorImage.isNull()) { return;