diff --git a/tools/testrun b/tools/testrun index dd6304381a12ecb97ee9e9dabffe963be3810b66..b5e1da689f2fe37b6d3b9d8a52dafbd8c5e2f3a6 100755 --- a/tools/testrun +++ b/tools/testrun @@ -150,7 +150,7 @@ sub kill_subprocesses { # kill all subprocesses called 'wine'. Do not kill find, diff, sh # and friends, which are also subprocesses of us. foreach (keys %kids) { - next unless ($cmdline{$_} =~ /(wine|dosmod)/); + next unless ($cmdline{$_} =~ /((.|)wine|dosmod)/); # if we have already killed it using -TERM, use -KILL if ($killedalready{$_}) { kill(9,$_); # FIXME: use correct number? @@ -250,7 +250,7 @@ while ($exe=<FIND>) { alarm(1000);# so it doesn't trigger in the diff, kill or find. system("touch $cwd/runs/${runfile}.out"); - system("$diff $cwd/runs/${runfile}.out $cwd/${runfile}.out"); + system("$diff $cwd/runs/${runfile}.out $cwd/${runfile}.out|head -$trunclines"); system("head -$trunclines $cwd/${runfile}.out >$cwd/runs/${runfile}.out"); unlink("$cwd/${runfile}.out"); &kill_subprocesses;