diff --git a/cluster-cron/exec.cgi b/cluster-cron/exec.cgi index ad7298e6d..8b8094e1d 100755 --- a/cluster-cron/exec.cgi +++ b/cluster-cron/exec.cgi @@ -23,20 +23,22 @@ $job->{'run'} = [ map { $_->{'host'} } @run ]; # for logging &ui_print_footer("edit.cgi?id=$in{'id'}", $cron::text{'edit_return'}, "", $text{'index_return'}); -# callback(error, &server, message) +# callback(ok, &server, message) +# Called back to print results for each host the job is run on sub callback { -local $d = ($_[1]->{'host'} || &get_system_hostname()). - ($_[1]->{'desc'} ? " ($_[1]->{'desc'})" : ""); -if (!$_[0]) { +my ($ok, $s, $msg) = @_; +my $d = ($s->{'host'} || &get_system_hostname()). + ($s->{'desc'} ? " ($s->{'desc'})" : ""); +if (!$ok) { # Failed - show error - print "",&text('exec_failed', $d, $_[2]),"

\n"; + print "",&text('exec_failed', $d, &html_escape($msg)),"

\n"; } else { # Show output if any print "",&text('exec_success', $d),"\n"; - if ($_[2]) { - print "

\n"; + if ($ok) { + print "

\n"; } else { print "

\n";