projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
1. made ann,dx spots,wwv,wcy,wx more 'object oriented'.
[spider.git]
/
perl
/
DXDebug.pm
diff --git
a/perl/DXDebug.pm
b/perl/DXDebug.pm
index 4b8d4f250575ed198ec5357db1ba7b88c2dd3a8e..14f8dbd2a06ad753c559d3ed9c2cb56a52d8045b 100644
(file)
--- a/
perl/DXDebug.pm
+++ b/
perl/DXDebug.pm
@@
-14,7
+14,7
@@
require Exporter;
@EXPORT = qw(dbginit dbg dbgadd dbgsub dbglist dbgdump isdbg dbgclose confess croak cluck);
use strict;
@EXPORT = qw(dbginit dbg dbgadd dbgsub dbglist dbgdump isdbg dbgclose confess croak cluck);
use strict;
-use vars qw(%dbglevel $fp);
+use vars qw(%dbglevel $fp
$callback
);
use DXUtil;
use DXLog ();
use DXUtil;
use DXLog ();
@@
-22,6
+22,7
@@
use Carp ();
%dbglevel = ();
$fp = undef;
%dbglevel = ();
$fp = undef;
+$callback = undef;
# Avoid generating "subroutine redefined" warnings with the following
# hack (from CGI::Carp):
# Avoid generating "subroutine redefined" warnings with the following
# hack (from CGI::Carp):
@@
-64,13
+65,17
@@
sub dbg($)
for (@l) {
s/([\x00-\x08\x0B-\x1f\x7f-\xff])/uc sprintf("%%%02x",ord($1))/eg;
print "$_\n" if defined \*STDOUT;
for (@l) {
s/([\x00-\x08\x0B-\x1f\x7f-\xff])/uc sprintf("%%%02x",ord($1))/eg;
print "$_\n" if defined \*STDOUT;
- $fp->writeunix($t, "$t^$_");
+ my $str = "$t^$_";
+ &$callback($str) if $callback;
+ $fp->writeunix($t, $str);
}
}
}
sub dbginit
{
}
}
}
sub dbginit
{
+ $callback = shift;
+
# add sig{__DIE__} handling
if (!defined $DB::VERSION) {
$SIG{__WARN__} = sub {
# add sig{__DIE__} handling
if (!defined $DB::VERSION) {
$SIG{__WARN__} = sub {