rendered paste bodywhile (1) {
$SIG{CHLD} = 'IGNORE';
unless ($apid){ die "MANAGER: Fork failed: $!" unless defined($astman_pid = fork()); $apid = $$; }
if ($astman_pid) { &ASTMAN(); }
unless ($xpid) { die "MANAGER: Fork failed: $!" unless defined($xmpp_pid = fork()); $xpid = $$; }
if ($xmpp_pid) { &XMPPMAN(); }
my $xq =`ps -p \"$apid\" | wc -l`;
chomp($xq);
if ($xq != 2) { $apid=$xpid; $xpid =""; # the wierd part it works, but why is apid taking xpid's PID??
my $dnow = localtime time;
`/bin/echo \"$dnow ===> XMPP death: \" >> /var/log/astrp_xmpp 2>&1`;
print "reload\n";
}
sleep(3);
}