[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [krfb] libvncserver: Fix crash in krfb
From:       Amandeep Singh <aman.dedman () gmail ! com>
Date:       2014-04-06 4:55:30
Message-ID: E1WWf7C-0005Lo-Dv () scm ! kde ! org
[Download RAW message or body]

Git commit db5c2528cd45e602d75dfc52a74315dcbdc8a47d by Amandeep Singh.
Committed on 08/10/2013 at 22:42.
Pushed by amandeepsingh into branch 'master'.

Fix crash in krfb

Krfb crashes on quit, if any client is connected
due to a rfbClientConnectionGone call missing

M  +7    -4    libvncserver/main.c

http://commits.kde.org/krfb/db5c2528cd45e602d75dfc52a74315dcbdc8a47d

diff --git a/libvncserver/main.c b/libvncserver/main.c
index b47e873..8b8e8b8 100644
--- a/libvncserver/main.c
+++ b/libvncserver/main.c
@@ -1042,10 +1042,13 @@ void rfbShutdownServer(rfbScreenInfoPtr screen,rfbBool disconnectClients) {
   if(disconnectClients) {
     rfbClientPtr cl;
     rfbClientIteratorPtr iter = rfbGetClientIterator(screen);
-    while( (cl = rfbClientIteratorNext(iter)) )
-      if (cl->sock > -1)
-	/* we don't care about maxfd here, because the server goes away */
-	rfbCloseClient(cl);
+    while( (cl = rfbClientIteratorNext(iter)) ) {
+        if (cl->sock > -1) {
+            /* we don't care about maxfd here, because the server goes away */
+            rfbCloseClient(cl);
+            rfbClientConnectionGone(cl);
+        }
+    }
     rfbReleaseClientIterator(iter);
   }
 

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic