diff options
author | Larry Wall <lwall@netlabs.com> | 1992-06-08 04:51:08 +0000 |
---|---|---|
committer | Larry Wall <lwall@netlabs.com> | 1992-06-08 04:51:08 +0000 |
commit | 83025b217962b0369a18edad3fa14dc1087f3c2a (patch) | |
tree | 36468918bed135500627ad32184c14ca2c6cb7fa /lib/perldb.pl | |
parent | ee0007abcec11102eeaa49662e5ebb838e04aac6 (diff) | |
download | perl-83025b217962b0369a18edad3fa14dc1087f3c2a.tar.gz |
perl 4.0 patch 29: patch #20, continued
See patch #20.
Diffstat (limited to 'lib/perldb.pl')
-rw-r--r-- | lib/perldb.pl | 34 |
1 files changed, 24 insertions, 10 deletions
diff --git a/lib/perldb.pl b/lib/perldb.pl index 917469b492..8cfc36c32d 100644 --- a/lib/perldb.pl +++ b/lib/perldb.pl @@ -4,7 +4,7 @@ package DB; # Ray Lischner (uunet!mntgfx!lisch) as of 5 Nov 1990 # Johan Vromans -- upgrade to 4.0 pl 10 -$header = '$RCSfile: perldb.pl,v $$Revision: 4.0.1.2 $$Date: 91/11/05 17:55:58 $'; +$header = '$RCSfile: perldb.pl,v $$Revision: 4.0.1.3 $$Date: 92/06/08 13:43:57 $'; # # This file is automatically included if you do perl -d. # It's probably not useful to include this yourself. @@ -14,6 +14,10 @@ $header = '$RCSfile: perldb.pl,v $$Revision: 4.0.1.2 $$Date: 91/11/05 17:55:58 $ # have a breakpoint. It also inserts a do 'perldb.pl' before the first line. # # $Log: perldb.pl,v $ +# Revision 4.0.1.3 92/06/08 13:43:57 lwall +# patch20: support for MSDOS folded into perldb.pl +# patch20: perldb couldn't debug file containing '-', such as STDIN designator +# # Revision 4.0.1.2 91/11/05 17:55:58 lwall # patch11: perldb.pl modified to run within emacs in perldb-mode # @@ -56,8 +60,17 @@ $header = '$RCSfile: perldb.pl,v $$Revision: 4.0.1.2 $$Date: 91/11/05 17:55:58 $ # # -open(IN, "</dev/tty") || open(IN, "<&STDIN"); # so we don't dingle stdin -open(OUT,">/dev/tty") || open(OUT, ">&STDOUT"); # so we don't dongle stdout +if (-e "/dev/tty") { + $console = "/dev/tty"; + $rcfile=".perldb"; +} +else { + $console = "con"; + $rcfile="perldb.ini"; +} + +open(IN, "<$console") || open(IN, "<&STDIN"); # so we don't dingle stdin +open(OUT,">$console") || open(OUT, ">&STDOUT"); # so we don't dongle stdout select(OUT); $| = 1; # for DB'OUT select(STDOUT); @@ -304,7 +317,8 @@ command Execute as a perl statement in current package. $cond = $2 || '1'; $subname = "$package'" . $subname unless $subname =~ /'/; $subname = "main" . $subname if substr($subname,0,1) eq "'"; - ($filename,$i) = split(/[:-]/, $sub{$subname}); + ($filename,$i) = split(/:/, $sub{$subname}); + $i += 0; if ($i) { *dbline = "_<$filename"; ++$i while $dbline[$i] == 0 && $i < $#dbline; @@ -568,14 +582,14 @@ for (@args) { s/(.*)/'$1'/ unless /^-?[\d.]+$/; } -if (-f '.perldb') { - do './.perldb'; +if (-f $rcfile) { + do "./$rcfile"; } -elsif (-f "$ENV{'LOGDIR'}/.perldb") { - do "$ENV{'LOGDIR'}/.perldb"; +elsif (-f "$ENV{'LOGDIR'}/$rcfile") { + do "$ENV{'LOGDIR'}/$rcfile"; } -elsif (-f "$ENV{'HOME'}/.perldb") { - do "$ENV{'HOME'}/.perldb"; +elsif (-f "$ENV{'HOME'}/$rcfile") { + do "$ENV{'HOME'}/$rcfile"; } 1; |