$DB::subname = ''; # currently executing sub (fullly qualified name)
$DB::lineno = ''; # current line number
- $DB::VERSION = $DB::VERSION = '1.0';
+ $DB::VERSION = $DB::VERSION = '1.04';
# initialize private globals to avoid warnings
push(@stack, $DB::single);
$DB::single &= 1;
$DB::single |= 4 if $#stack == $deep;
-# print $DB::sub, "\n";
- if ($DB::sub =~ /(?:^|::)DESTROY$/ or not defined wantarray) {
+ if ($DB::sub eq 'DESTROY' or substr($DB::sub, -9) eq '::DESTROY' or not defined wantarray) {
&$DB::sub;
$DB::single |= pop(@stack);
$DB::ret = undef;
$usrctxt = "package $DB::package;"; # this won't let them modify, alas
local(*DB::dbline) = "::_<$DB::filename";
- # we need to check for pseudofiles on Mac OS (these are files
- # not attached to a filename, but instead stored in Dev:Pseudo)
- # since this is done late, $DB::filename will be "wrong" after
- # skippkg
- if ($^O eq 'MacOS' && $#DB::dbline < 0) {
- $DB::filename = 'Dev:Pseudo';
- *DB::dbline = "::_<$DB::filename";
- }
-
my ($stop, $action);
if (($stop,$action) = split(/\0/,$DB::dbline{$DB::lineno})) {
if ($stop eq '1') {
} elsif ($s eq '(eval)') {
$s = "eval {...}";
}
- $f = "file `$f'" unless $f eq '-e';
+ $f = "file '$f'" unless $f eq '-e';
push @ret, "$w&$s$a from $f line $l";
last if $DB::signal;
}
=head1 NAME
-DB - programmatic interface to the Perl debugging API (draft, subject to
-change)
+DB - programmatic interface to the Perl debugging API
=head1 SYNOPSIS