fxied infinite loop
[spider.git] / perl / console.pl
index 97c0864c3e89e49b23b4627c4a31724618cfdcd8..cec17ab4495b5fc2e14833df17cf2b6b7de174f6 100755 (executable)
@@ -81,6 +81,7 @@ sub do_initscr
        $scr->refresh();
        
        $pagel = LINES()-4;
+       $mycallcolor = COLOR_PAIR(1) unless $mycallcolor;
 }
 
 sub do_resize
@@ -136,7 +137,7 @@ sub measure
 # display the top screen
 sub show_screen
 {
-       if ($spos == @shistory - 1) {
+       if ($spos >= @shistory - 1) {
 
                # if we really are scrolling thru at the end of the history
                my $line = $shistory[$spos];
@@ -174,8 +175,11 @@ sub show_screen
                $spos = @shistory if $spos > @shistory;
        }
     my $shl = @shistory;
-       my $add = "$call-$spos-$shl";
-    $scr->addstr(LINES()-4, 0, '-' x (COLS() - length $add));
+       my $add = "-$spos-$shl";
+    $scr->addstr(LINES()-4, 0, '-' x (COLS() - (length($call) + length($add))));
+       $scr->attrset($mycallcolor) if $has_colors;
+       $scr->addstr("$call");
+       $scr->attrset(COLOR_PAIR(0)) if $has_colors;
     $scr->addstr($add);
        $scr->refresh();
 #      $top->refresh();
@@ -422,7 +426,7 @@ Msg->set_event_handler(\*STDIN, "read" => \&rec_stdin);
 
 for (;;) {
        my $t;
-       Msg->event_loop(1, 0.010);
+       Msg->event_loop(1, 1);
        $top->refresh() if $top->is_wintouched;
        $bot->refresh();
        $t = time;