31 lines
891 B
Diff
31 lines
891 B
Diff
|
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;
|