script: fix display of ten slowest tests if < 10 tests are run.
authorMichael Adam <obnox@samba.org>
Mon, 27 Oct 2014 11:35:12 +0000 (12:35 +0100)
committerMichael Adam <obnox@samba.org>
Thu, 30 Oct 2014 19:25:04 +0000 (20:25 +0100)
Note: $#array is the biggest index in an array in perl.
@array evaluated in scalar context is the number of elements.
Hence scalar(@array) = 1 + $#array

Or equivalently: 0 + @array = 1 + $#array

... :-)

Apart from this off-by-one error, the "unless" clause to trigger
the capping of the number of tests listed was wrong. Hence if
less then 10 tests were run, a number of blank lines were appended.

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
script/show_testsuite_time

index d4379f4597e497f6b672fd853f0a2be078f50c68..fb9ea2f94f44e5270be15ecaf0fae8c2fd068d48 100755 (executable)
@@ -43,7 +43,7 @@ while(<$fh>)
        }
 }
 my @sorted = sort { $hash{$b}<=>$hash{$a} } keys(%hash);
-$max = $#sorted unless $max or ($max < $#sorted);
+$max = @sorted if (($max <= 0) or ($max > @sorted));
 for my $l (@sorted[0..($max - 1)]) {
        print $l."\n";
 }