summaryrefslogtreecommitdiffstats
path: root/source/l/libvncserver/libvncserver.15c4f144a3783d9f1f2c976acf9f4d85988fd466.patch
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--source/l/libvncserver/libvncserver.15c4f144a3783d9f1f2c976acf9f4d85988fd466.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/source/l/libvncserver/libvncserver.15c4f144a3783d9f1f2c976acf9f4d85988fd466.patch b/source/l/libvncserver/libvncserver.15c4f144a3783d9f1f2c976acf9f4d85988fd466.patch
new file mode 100644
index 000000000..b8edd35e2
--- /dev/null
+++ b/source/l/libvncserver/libvncserver.15c4f144a3783d9f1f2c976acf9f4d85988fd466.patch
@@ -0,0 +1,25 @@
+From 15c4f144a3783d9f1f2c976acf9f4d85988fd466 Mon Sep 17 00:00:00 2001
+From: Albert Astals Cid <aacid@kde.org>
+Date: Sun, 5 Jan 2020 19:56:57 +0100
+Subject: [PATCH] rfbShutdownServer: Call rfbClientConnectionGone if no
+ backgroundLoop
+
+Otherwise the servers that don't use rfbRunEventLoop don't get
+notified of client disconnections
+---
+ libvncserver/main.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/libvncserver/main.c b/libvncserver/main.c
+index b51f0ab6..738a501d 100644
+--- a/libvncserver/main.c
++++ b/libvncserver/main.c
+@@ -1152,6 +1152,8 @@ void rfbShutdownServer(rfbScreenInfoPtr screen,rfbBool disconnectClients) {
+ write(currentCl->pipe_notify_client_thread[1], "\x00", 1);
+ /* And wait for it to finish. */
+ pthread_join(currentCl->client_thread, NULL);
++ } else {
++ rfbClientConnectionGone(currentCl);
+ }
+ #else
+ rfbClientConnectionGone(currentCl);