make sure that the actual line is printed in grepdbg & watchdbg esp. with
[spider.git] / perl / watchdbg
index c1d6b172beb11a09f63e2c288c7596f152f770f4..720904bfca013ec9d54224e26a637cef38bb7d1a 100755 (executable)
@@ -6,6 +6,7 @@
 # examples:-
 # 
 #   watchdbg g1tlh       # watch everything g1tlh does
+#   watchdbg 2 PCPROT       # watch all PCPROT messages + up to 2 lines before
 #   watchdbg gb7baa gb7djk   # watch the conversation between BAA and DJK 
 #
 
@@ -76,12 +77,11 @@ sub printit
                my $line = shift;
                chomp $line;
                $line =~ s/([\x00-\x1f\x7f-\xff])/sprintf("\\x%02X", ord($1))/eg; 
-               my @line =  split '\^', $line;
-               my $t = shift @line;
+               my ($t, $l) =  split /\^/, $line, 2;
                my ($sec,$min,$hour) = gmtime((defined $t) ? $t : time);
                my $buf = sprintf "%02d:%02d:%02d", $hour, $min, $sec;
                
-               print $buf, ' ', join('^', @line), "\n"; 
+               print $buf, ' ', $l, "\n"; 
        }
 }
 exit(0);