Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package krdp6 for openSUSE:Factory checked 
in at 2026-02-27 17:03:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/krdp6 (Old)
 and      /work/SRC/openSUSE:Factory/.krdp6.new.29461 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "krdp6"

Fri Feb 27 17:03:58 2026 rev:34 rq:1334948 version:6.6.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/krdp6/krdp6.changes      2026-02-16 
13:11:56.744589570 +0100
+++ /work/SRC/openSUSE:Factory/.krdp6.new.29461/krdp6.changes   2026-02-27 
17:09:06.270112260 +0100
@@ -1,0 +2,10 @@
+Tue Feb 24 17:20:31 UTC 2026 - Fabian Vogt <[email protected]>
+
+- Update to 6.6.1:
+  * New bugfix release
+  * For more details see https://kde.org/announcements/plasma/6/6.6.1
+- Changes since 6.6.0:
+  * Update version for new release 6.6.1
+  * Fix server-to-client clipboard (CLIPRDR) for RDP clients
+
+-------------------------------------------------------------------

Old:
----
  krdp-6.6.0.tar.xz
  krdp-6.6.0.tar.xz.sig

New:
----
  krdp-6.6.1.tar.xz
  krdp-6.6.1.tar.xz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ krdp6.spec ++++++
--- /var/tmp/diff_new_pack.PfcuXh/_old  2026-02-27 17:09:07.498163197 +0100
+++ /var/tmp/diff_new_pack.PfcuXh/_new  2026-02-27 17:09:07.498163197 +0100
@@ -27,14 +27,14 @@
 %{!?_plasma6_version: %define _plasma6_version %(echo %{_plasma6_bugfix} | awk 
-F. '{print $1"."$2}')}
 %bcond_without released
 Name:           krdp6
-Version:        6.6.0
+Version:        6.6.1
 Release:        0
 Summary:        RDP Server for Plasma
 License:        LGPL-2.1-or-later
 URL:            https://invent.kde.org/plasma/krdp
-Source:         %{rname}-%{version}.tar.xz
+Source:         
https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
 %if %{with released}
-Source1:        %{rname}-%{version}.tar.xz.sig
+Source1:        
https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz.sig
 Source2:        plasma.keyring
 %endif
 BuildRequires:  kf6-extra-cmake-modules >= %{kf6_version}

++++++ krdp-6.6.0.tar.xz -> krdp-6.6.1.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krdp-6.6.0/CMakeLists.txt 
new/krdp-6.6.1/CMakeLists.txt
--- old/krdp-6.6.0/CMakeLists.txt       2026-02-12 11:03:04.000000000 +0100
+++ new/krdp-6.6.1/CMakeLists.txt       2026-02-24 10:38:15.000000000 +0100
@@ -1,7 +1,7 @@
 # SPDX-FileCopyrightText: 2023 Arjen Hiemstra <[email protected]>
 # SPDX-License-Identifier: BSD-2-Clause
 
-set(PROJECT_VERSION "6.6.0")
+set(PROJECT_VERSION "6.6.1")
 
 cmake_minimum_required(VERSION 3.16)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krdp-6.6.0/src/Clipboard.cpp 
new/krdp-6.6.1/src/Clipboard.cpp
--- old/krdp-6.6.0/src/Clipboard.cpp    2026-02-12 11:03:04.000000000 +0100
+++ new/krdp-6.6.1/src/Clipboard.cpp    2026-02-24 10:38:15.000000000 +0100
@@ -111,7 +111,7 @@
         return false;
     }
 
-    d->clipContext->useLongFormatNames = FALSE;
+    d->clipContext->useLongFormatNames = TRUE;
     d->clipContext->streamFileClipEnabled = FALSE;
     d->clipContext->fileClipNoFilePaths = FALSE;
     d->clipContext->canLockClipData = FALSE;
@@ -176,12 +176,15 @@
         return;
     }
 
-    CLIPRDR_FORMAT_LIST formatList;
+    CLIPRDR_FORMAT format = {};
+    format.formatId = CF_UNICODETEXT;
+    format.formatName = nullptr;
+
+    CLIPRDR_FORMAT_LIST formatList = {};
     formatList.common.msgType = CB_FORMAT_LIST;
     formatList.common.msgFlags = 0;
     formatList.numFormats = 1;
-    formatList.formats = reinterpret_cast<CLIPRDR_FORMAT 
*>(malloc(sizeof(CLIPRDR_FORMAT)));
-    formatList.formats[0].formatId = CF_UNICODETEXT;
+    formatList.formats = &format;
     d->clipContext->ServerFormatList(d->clipContext.get(), &formatList);
 }
 
@@ -204,6 +207,12 @@
         }
     }
 
+    // Acknowledge the client's format list (required by CLIPRDR protocol)
+    CLIPRDR_FORMAT_LIST_RESPONSE response = {};
+    response.common.msgType = CB_FORMAT_LIST_RESPONSE;
+    response.common.msgFlags = CB_RESPONSE_OK;
+    clipContext->ServerFormatListResponse(clipContext.get(), &response);
+
     return CHANNEL_RC_OK;
 }
 
@@ -215,14 +224,24 @@
 uint32_t Clipboard::Private::onClientFormatDataRequest(const 
CLIPRDR_FORMAT_DATA_REQUEST *formatDataRequest)
 {
     if (!serverData || formatDataRequest->requestedFormatId != CF_UNICODETEXT) 
{
+        CLIPRDR_FORMAT_DATA_RESPONSE response = {};
+        response.common.msgType = CB_FORMAT_DATA_RESPONSE;
+        response.common.msgFlags = CB_RESPONSE_FAIL;
+        response.common.dataLen = 0;
+        response.requestedFormatData = nullptr;
+        clipContext->ServerFormatDataResponse(clipContext.get(), &response);
         return CHANNEL_RC_OK;
     }
 
-    auto data = serverData->text().toStdU16String();
-
-    CLIPRDR_FORMAT_DATA_RESPONSE response{
-        .common = CLIPRDR_HEADER({.msgType = CB_FORMAT_DATA_RESPONSE, 
.msgFlags = CB_RESPONSE_OK, .dataLen = uint32_t(data.length()) * 2}),
-        .requestedFormatData = reinterpret_cast<BYTE *>(data.data())};
+    auto text = serverData->text();
+    // CF_UNICODETEXT requires null-terminated UTF-16LE
+    QByteArray utf16Data(reinterpret_cast<const char *>(text.utf16()), 
(text.length() + 1) * 2);
+
+    CLIPRDR_FORMAT_DATA_RESPONSE response = {};
+    response.common.msgType = CB_FORMAT_DATA_RESPONSE;
+    response.common.msgFlags = CB_RESPONSE_OK;
+    response.common.dataLen = utf16Data.size();
+    response.requestedFormatData = reinterpret_cast<const BYTE 
*>(utf16Data.constData());
 
     clipContext->ServerFormatDataResponse(clipContext.get(), &response);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krdp-6.6.0/src/Clipboard.h 
new/krdp-6.6.1/src/Clipboard.h
--- old/krdp-6.6.0/src/Clipboard.h      2026-02-12 11:03:04.000000000 +0100
+++ new/krdp-6.6.1/src/Clipboard.h      2026-02-24 10:38:15.000000000 +0100
@@ -24,11 +24,6 @@
     Q_OBJECT
 
 public:
-    /**
-     * TODO: This clipboard is currently not implemented. It only
-     * works as a dummy clipboard that does nothing to avoid crashes if
-     * cliprdr channel is opened.
-     */
     explicit Clipboard(RdpConnection *session);
     ~Clipboard() override;
 

Reply via email to