File u_tigervnc-vncserver-clean-pid-files.patch of Package tigervnc.openSUSE_Leap_42.1_Update

Author: Egbert Eich <eich@suse.com>
Subject: Clean pid files of dead processes.
Patch-Mainline: To be upstreamed
References: bnc#948392
Signed-off-by: Michal Srb <msrb@suse.com>

--- a/unix/vncserver	2015-05-19 18:01:12.000000000 +0200
+++ b/unix/vncserver	2015-10-01 15:52:50.920363305 +0200
@@ -302,6 +302,7 @@ 
 }
 unless (kill 0, `cat $pidFile`) {
     warn "Could not start Xvnc.\n\n";
+    unlink $pidFile;
     open(LOG, "<$desktopLog");
     while (<LOG>) { print; }
     close(LOG);
@@ -587,7 +588,12 @@ 
     print "X DISPLAY #\tPROCESS ID\n";
     foreach my $file (@filelist) {
 	if ($file =~ /$host:(\d+)$\.pid/) {
-	    print ":".$1."\t\t".`cat $vncUserDir/$file`;
+	    chop($tmp_pid = `cat $vncUserDir/$file`);
+	    if (kill 0, $tmp_pid) {
+		print ":".$1."\t\t".`cat $vncUserDir/$file`;
+	    } else {
+		unlink ($vncUserDir . "/" . $file);
+	    }
 	}
     }
     exit 1;
openSUSE Build Service is sponsored by