diff --git a/autotests/wayland/dont_crash_empty_deco.cpp b/autotests/wayland/dont_crash_empty_deco.cpp index 1b74bf8785eb33a065171835f0b8da393977c419..7ae4a2e1f25910e20da061bd09170991014a3b3a 100644 --- a/autotests/wayland/dont_crash_empty_deco.cpp +++ b/autotests/wayland/dont_crash_empty_deco.cpp @@ -70,6 +70,9 @@ private: void DontCrashEmptyDecorationTest::initTestCase() { + if (!QFile::exists(QStringLiteral("/dev/dri/card0"))) { + QSKIP("Needs a dri device"); + } qRegisterMetaType(); qRegisterMetaType(); QSignalSpy workspaceCreatedSpy(kwinApp(), &Application::workspaceCreated); diff --git a/wayland_server.cpp b/wayland_server.cpp index 8d205c5912aab671a560d2255b88d244e328b60b..939cf0ab4715e73e212ff008495203d2421d8eb1 100644 --- a/wayland_server.cpp +++ b/wayland_server.cpp @@ -97,9 +97,11 @@ void WaylandServer::terminateClientConnections() { destroyInternalConnection(); destroyInputMethodConnection(); - const auto connections = m_display->connections(); - for (auto it = connections.begin(); it != connections.end(); ++it) { - (*it)->destroy(); + if (m_display) { + const auto connections = m_display->connections(); + for (auto it = connections.begin(); it != connections.end(); ++it) { + (*it)->destroy(); + } } }