aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Gräßlin <[email protected]>2016-12-23 16:18:15 +0100
committerMartin Gräßlin <[email protected]>2016-12-23 16:18:15 +0100
commit58fa92e40bd3dd144101ed607b0030ed666b7083 (patch)
tree139c547ad41d10d3581d1a0499faffe291061784
parent286ad7104d29f4368c6957f0aad7925b5455ddcd (diff)
Pass EGL_PLATFORM=DRM to XWayland
XWayland needs to create an eglDisplay for platform DRM. Depending on the mesa version eglInitialize expects that the passed native display is a Wayland display and crashes. This prevents KWin to startup. This patch sets EGL_PLATFORM for Xwayland. This is actually not KWin's job, but if it otherwise crashes it's better than nothing. As Xwayland only supports DRM, it's fine to use this.
-rw-r--r--main_wayland.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/main_wayland.cpp b/main_wayland.cpp
index ebc2c14..27ae358 100644
--- a/main_wayland.cpp
+++ b/main_wayland.cpp
@@ -324,6 +324,7 @@ void ApplicationWayland::startXwaylandServer()
m_xwaylandProcess->setProgram(QStringLiteral("Xwayland"));
QProcessEnvironment env = m_environment;
env.insert("WAYLAND_SOCKET", QByteArray::number(wlfd));
+ env.insert("EGL_PLATFORM", QByteArrayLiteral("DRM"));
m_xwaylandProcess->setProcessEnvironment(env);
m_xwaylandProcess->setArguments({QStringLiteral("-displayfd"),
QString::number(pipeFds[1]),