x11-wm/plasma5-kwin: unbreak Xwayland support after 4ea20bee50

kwin_xwl: Failed to find free X11 connection socket

PR:		259614
Approved by:	tcberner

(cherry picked from commit 03033c16bb)
This commit is contained in:
Jan Beich 2021-11-02 15:32:37 +00:00
parent 7e2c4c3375
commit a11f9c00e7
2 changed files with 36 additions and 0 deletions

View file

@ -1,5 +1,6 @@
PORTNAME= kwin
DISTVERSION= ${KDE_PLASMA_VERSION}
PORTREVISION= 1
CATEGORIES= x11-wm kde kde-plasma
MAINTAINER= kde@FreeBSD.org

View file

@ -0,0 +1,35 @@
$ kwin_wayland --xwayland
[...]
kwin_xwl: Failed to find free X11 connection socket
Failed to establish X11 socket
--- src/xwl/xwaylandsocket.cpp.orig 2021-08-31 11:41:03 UTC
+++ src/xwl/xwaylandsocket.cpp
@@ -179,10 +179,17 @@ XwaylandSocket::XwaylandSocket()
continue;
}
+#if defined(Q_OS_LINUX)
const int abstractFileDescriptor = listen_helper(socketFilePath, UnixSocketAddress::Type::Abstract);
+#else
+ const int abstractFileDescriptor = listen_helper(socketFilePath + "_", UnixSocketAddress::Type::Unix);
+#endif
if (abstractFileDescriptor == -1) {
QFile::remove(lockFilePath);
QFile::remove(socketFilePath);
+#if !defined(Q_OS_LINUX)
+ QFile::remove(socketFilePath + "_");
+#endif
close(unixFileDescriptor);
continue;
}
@@ -208,6 +215,9 @@ XwaylandSocket::~XwaylandSocket()
}
if (!m_socketFilePath.isEmpty()) {
QFile::remove(m_socketFilePath);
+#if !defined(Q_OS_LINUX)
+ QFile::remove(m_socketFilePath + "_");
+#endif
}
if (!m_lockFilePath.isEmpty()) {
QFile::remove(m_lockFilePath);