fix problem displaying spots with the standalone program 'showdx'.
[spider.git] / perl / console.pl
index f4c4a85fa37731c163379cdf3b21b9b84d609b35..597c5eff0ee2010764a9e533732c14b8cd23a38b 100755 (executable)
@@ -23,6 +23,14 @@ BEGIN {
        
        unshift @INC, "$root/perl";     # this IS the right way round!
        unshift @INC, "$root/local";
+
+       sub main::mkver
+       {
+               my $s = shift;
+               my ($v, $b) = $s =~ /(\d+\.\d+)(?:\.(\d+\.\d+))?/;
+               $main::build += sprintf "%.3f", $v;
+               $main::branch += sprintf("%.3f", $b) if $b;
+       }
 }
 
 use Msg;
@@ -334,7 +342,7 @@ sub rec_stdin
                } elsif ($r eq KEY_PPAGE || $r eq "\032") {
                        if ($spos > 0) {
                                my ($i, $l);
-                               for ($i = 0; $i <= $pagel && $spos >= 0; ) {
+                               for ($i = 0; $i <= $pagel-1 && $spos >= 0; ) {
                                        $l = measure($shistory[$spos]);
                                        $i += $l;
                                        $spos-- if $i <= $pagel;