diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/DB.pm | 10 | ||||
-rw-r--r-- | lib/perl5db.pl | 8 |
2 files changed, 18 insertions, 0 deletions
@@ -93,6 +93,16 @@ sub DB { $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') { diff --git a/lib/perl5db.pl b/lib/perl5db.pl index 3365691a7e..711755eed9 100644 --- a/lib/perl5db.pl +++ b/lib/perl5db.pl @@ -667,6 +667,14 @@ sub DB { $usercontext = '($@, $!, $^E, $,, $/, $\, $^W) = @saved;' . "package $package;"; # this won't let them modify, alas local(*dbline) = $main::{'_<' . $filename}; + + # we need to check for pseudofiles on Mac OS (these are files + # not attached to a filename, but instead stored in Dev:Pseudo) + if ($^O eq 'MacOS' && $#dbline < 0) { + $filename_ini = $filename = 'Dev:Pseudo'; + *dbline = $main::{'_<' . $filename}; + } + $max = $#dbline; if ($dbline{$line} && (($stop,$action) = split(/\0/,$dbline{$line}))) { if ($stop eq '1') { |