From 7b3d8f4baa6a8e62d182c4f227ac97fab085bbb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= Date: Mon, 5 Aug 2024 22:07:08 +0400 Subject: [PATCH] rdp: don't attemt to reregister clipboard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marc-André Lureau --- qemu-rdp/src/server/clipboard.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/qemu-rdp/src/server/clipboard.rs b/qemu-rdp/src/server/clipboard.rs index f26e8fd..459f760 100644 --- a/qemu-rdp/src/server/clipboard.rs +++ b/qemu-rdp/src/server/clipboard.rs @@ -30,6 +30,7 @@ use tokio::{ #[derive(Debug)] pub struct Inner { + registered: bool, clipboard: Clipboard, tx: Sender, selection: ClipboardSelection, @@ -289,9 +290,13 @@ async fn rdp_clipboard_receive_task(mut rx: Receiver, cb: Clipbo impl Inner { fn register(&mut self) { + if self.registered { + return; + } if let Err(e) = self.tx.try_send(ClipboardEvent::Register) { error!(?e, "clipboard register error"); } + self.registered = true; } fn grab(&mut self, available_formats: Vec) { @@ -348,6 +353,7 @@ impl ClipboardHandler { ev_sender: None, dbus_request: None, _task: None, + registered: false, })); let s = Self { inner };