diff --git a/wayland_server.cpp b/wayland_server.cpp --- a/wayland_server.cpp +++ b/wayland_server.cpp @@ -565,25 +565,28 @@ void WaylandServer::setupX11ClipboardSync() { if (m_xclipbaordSync.process) { + qCWarning(KWIN_CORE) << "Tried to start x clipboard syncer although process already started"; return; } int socket = dup(createXclipboardSyncConnection()); if (socket == -1) { delete m_xclipbaordSync.client; m_xclipbaordSync.client = nullptr; + qCWarning(KWIN_CORE) << "Could not create wayland socket for x clipboard syncer"; return; } if (socket >= 0) { QProcessEnvironment environment = kwinApp()->processStartupEnvironment(); environment.insert(QStringLiteral("WAYLAND_SOCKET"), QByteArray::number(socket)); environment.insert(QStringLiteral("DISPLAY"), QString::fromUtf8(qgetenv("DISPLAY"))); environment.remove("WAYLAND_DISPLAY"); m_xclipbaordSync.process = new Process(this); - m_xclipbaordSync.process->setProcessChannelMode(QProcess::ForwardedErrorChannel); + m_xclipbaordSync.process->setProcessChannelMode(QProcess::ForwardedChannels); auto finishedSignal = static_cast(&QProcess::finished); connect(m_xclipbaordSync.process, finishedSignal, this, [this] { + qCDebug(KWIN_CORE) << "X clipboard syncer process finished"; m_xclipbaordSync.process->deleteLater(); m_xclipbaordSync.process = nullptr; m_xclipbaordSync.ddi.clear(); @@ -596,8 +599,10 @@ // start from build directory if executable is available there (e.g. autotests), otherwise start libexec executable const QFileInfo clipboardSync{QDir{QCoreApplication::applicationDirPath()}, QStringLiteral("org_kde_kwin_xclipboard_syncer")}; if (clipboardSync.exists()) { + qCDebug(KWIN_CORE) << "Starting" << clipboardSync.absoluteFilePath(); m_xclipbaordSync.process->start(clipboardSync.absoluteFilePath()); } else { + qCDebug(KWIN_CORE) << "Starting" << KWIN_XCLIPBOARD_SYNC_BIN; m_xclipbaordSync.process->start(QStringLiteral(KWIN_XCLIPBOARD_SYNC_BIN)); } }