diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/B/t/showlex.t | 2 | ||||
-rw-r--r-- | ext/Devel-Peek/Peek.xs | 1 | ||||
-rw-r--r-- | ext/IPC-Open3/lib/IPC/Open3.pm | 4 |
3 files changed, 6 insertions, 1 deletions
diff --git a/ext/B/t/showlex.t b/ext/B/t/showlex.t index 6a531821f9..2871622a5d 100644 --- a/ext/B/t/showlex.t +++ b/ext/B/t/showlex.t @@ -31,7 +31,7 @@ if ($is_thread) { ok "# use5005threads: test skipped\n"; } else { $a = `$^X $path "-MO=Showlex" -e "my \@one" 2>&1`; - like ($a, qr/sv_undef.*PVNV.*\@one.*sv_undef.*AV/s, + like ($a, qr/sv_undef.*PVNV.*\@one.*Nullsv.*AV/s, "canonical usage works"); } diff --git a/ext/Devel-Peek/Peek.xs b/ext/Devel-Peek/Peek.xs index 1ea7f8fed9..73094b8efc 100644 --- a/ext/Devel-Peek/Peek.xs +++ b/ext/Devel-Peek/Peek.xs @@ -81,6 +81,7 @@ DeadCode(pTHX) } } for (j = 1; j < AvFILL((AV*)svp[1]); j++) { /* Vars. */ + if (!pad[j]) continue; if (SvROK(pad[j])) { levelref++; do_sv_dump(0, Perl_debug_log, pad[j], 0, 4, 0, 0); diff --git a/ext/IPC-Open3/lib/IPC/Open3.pm b/ext/IPC-Open3/lib/IPC/Open3.pm index af1d1e0690..90bd9fb087 100644 --- a/ext/IPC-Open3/lib/IPC/Open3.pm +++ b/ext/IPC-Open3/lib/IPC/Open3.pm @@ -185,6 +185,10 @@ sub _open3 { # it's too ugly to use @_ throughout to make perl do it for us # tchrist 5-Mar-00 + # Historically, open3(undef...) has silently worked, so keep + # it working. + splice @_, 0, 1, undef if \$_[0] == \undef; + splice @_, 1, 1, undef if \$_[1] == \undef; unless (eval { $_[0] = gensym unless defined $_[0] && length $_[0]; $_[1] = gensym unless defined $_[1] && length $_[1]; |