mirror of
git://slackware.nl/current.git
synced 2025-01-02 06:19:52 +01:00
8d94e33d1a
a/btrfs-progs-5.4.1-x86_64-1.txz: Upgraded. l/libvncserver-0.9.12-x86_64-2.txz: Rebuilt. Merged upstream bugfix pull requests. Thanks to alienBOB. n/NetworkManager-1.22.4-x86_64-1.txz: Upgraded. xap/mozilla-thunderbird-68.4.1-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/en-US/thunderbird/68.4.1/releasenotes/ https://www.mozilla.org/security/known-vulnerabilities/thunderbird.html https://www.mozilla.org/en-US/security/advisories/mfsa2020-04/ https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17026 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17015 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17016 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17017 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17021 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17022 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17024 (* Security fix *)
33 lines
1.3 KiB
Diff
33 lines
1.3 KiB
Diff
From d0a76539835d11c0f4723499f8be4bc9c7724eb9 Mon Sep 17 00:00:00 2001
|
|
From: Rajesh Sahoo <rajesh.sahoo@lge.com>
|
|
Date: Tue, 11 Jun 2019 15:13:04 +0530
|
|
Subject: [PATCH] avoid pthread_join if backgroundLoop is FALSE
|
|
|
|
client_thread is created depending upon backgroundLoop, but joining
|
|
without checking for same condition. so we are trying to join a garbage
|
|
thread_id.
|
|
---
|
|
libvncserver/main.c | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
diff --git a/libvncserver/main.c b/libvncserver/main.c
|
|
index d3cd9b1e..772fb18f 100644
|
|
--- a/libvncserver/main.c
|
|
+++ b/libvncserver/main.c
|
|
@@ -1112,6 +1112,7 @@ void rfbShutdownServer(rfbScreenInfoPtr screen,rfbBool disconnectClients) {
|
|
}
|
|
|
|
#ifdef LIBVNCSERVER_HAVE_LIBPTHREAD
|
|
+ if(currentCl->screen->backgroundLoop) {
|
|
/*
|
|
Notify the thread. This simply writes a NULL byte to the notify pipe in order to get past the select()
|
|
in clientInput(), the loop in there will then break because the rfbCloseClient() above has set
|
|
@@ -1120,6 +1121,7 @@ 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);
|
|
#endif
|
|
|