diff options
author | spidb@cpan.org <spidb@cpan.org> | 2002-03-29 01:34:11 -0500 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-03-29 17:19:26 +0000 |
commit | 471505cc5beed1a51617bf50cddf9bd18ee2824b (patch) | |
tree | 67b7072f3547cd9d1df9724a5d7fb96b9994bb83 /lib/perl5db.pl | |
parent | 9d1313d87d8eeca5cc6669cd8bfc73c4c3d1aeb7 (diff) | |
download | perl-471505cc5beed1a51617bf50cddf9bd18ee2824b.tar.gz |
Re: debugger debuggers wanted
Message-Id: <200203291134.GAA15727@Orb.Nashua.NH.US>
p4raw-id: //depot/perl@15607
Diffstat (limited to 'lib/perl5db.pl')
-rw-r--r-- | lib/perl5db.pl | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/perl5db.pl b/lib/perl5db.pl index 093fc2cb1e..6e9a9d5e4d 100644 --- a/lib/perl5db.pl +++ b/lib/perl5db.pl @@ -1,7 +1,7 @@ package DB; # Debugger for Perl 5.00x; perl5db.pl patch level: -$VERSION = 1.17; +$VERSION = 1.19; $header = "perl5db.pl version $VERSION"; # It is crucial that there is no lexicals in scope of `eval ""' down below @@ -318,6 +318,8 @@ sub eval { # + v(view code), V(view Variables) # ... (was w,V) # Changes: 1.18: Mar 17, 2002 Richard Foley <richard.foley@rfi.net> # + fixed missing cmd_O bug +# Changes: 1.19: Mar 29, 2002 Spider Boardman +# + Added missing local()s -- DB::DB is called recursively. # #################################################################### @@ -664,9 +666,9 @@ sub DB { } $runnonstop = 0 if $single or $signal; # Disable it if interactive. &save; - ($package, $filename, $line) = caller; - $filename_ini = $filename; - $usercontext = '($@, $!, $^E, $,, $/, $\, $^W) = @saved;' . + local($package, $filename, $line) = caller; + local $filename_ini = $filename; + local $usercontext = '($@, $!, $^E, $,, $/, $\, $^W) = @saved;' . "package $package;"; # this won't let them modify, alas local(*dbline) = $main::{'_<' . $filename}; @@ -677,7 +679,7 @@ sub DB { *dbline = $main::{'_<' . $filename}; } - $max = $#dbline; + local $max = $#dbline; if ($dbline{$line} && (($stop,$action) = split(/\0/,$dbline{$line}))) { if ($stop eq '1') { $signal |= 1; |