Change 33071 by [EMAIL PROTECTED] on 2008/01/26 10:24:40

        Change 33069 missed updating dump.c to dump PVIOs correctly.

Affected files ...

... //depot/perl/dump.c#298 edit
... //depot/perl/ext/Devel/Peek/t/Peek.t#38 edit

Differences ...

==== //depot/perl/dump.c#298 (text) ====
Index: perl/dump.c
--- perl/dump.c#297~32866~      2008-01-06 05:04:51.000000000 -0800
+++ perl/dump.c 2008-01-26 02:24:40.000000000 -0800
@@ -1554,7 +1554,7 @@
                         (UV) COP_SEQ_RANGE_HIGH(sv));
     } else if ((type >= SVt_PVNV && type != SVt_PVAV && type != SVt_PVHV
                && type != SVt_PVCV && type != SVt_PVFM  && type != SVt_REGEXP
-               && !isGV_with_GP(sv) && !SvVALID(sv))
+               && type != SVt_PVIO && !isGV_with_GP(sv) && !SvVALID(sv))
               || type == SVt_NV) {
        STORE_NUMERIC_LOCAL_SET_STANDARD();
        /* %Vg doesn't work? --jhi */

==== //depot/perl/ext/Devel/Peek/t/Peek.t#38 (text) ====
Index: perl/ext/Devel/Peek/t/Peek.t
--- perl/ext/Devel/Peek/t/Peek.t#37~32880~      2008-01-06 12:33:48.000000000 
-0800
+++ perl/ext/Devel/Peek/t/Peek.t        2008-01-26 02:24:40.000000000 -0800
@@ -14,7 +14,7 @@
 
 use Devel::Peek;
 
-plan(48);
+plan(50);
 
 our $DEBUG = 0;
 open(SAVERR, ">&STDERR") or die "Can't dup STDERR: $!";
@@ -45,6 +45,9 @@
                ($] < 5.009) ? "    IV = 0\n    NV = 0\n" : '';
            /mge;
            $pattern =~ s/\$RV/IV/g if $] >= 5.011;
+           $pattern =~ s/^ *\$NV *\n/
+               ($] < 5.011) ? "    NV = 0\n" : '';
+           /mge;
 
            print $pattern, "\n" if $DEBUG;
            my ($dump, $dump2) = split m/\*\*\*\*\*\n/, scalar <IN>;
@@ -541,3 +544,28 @@
   UV = \d+
   NV = 0
   PV = 0');
+
+do_test(25,
+       *STDOUT{IO},
+'SV = $RV\\($ADDR\\) at $ADDR
+  REFCNT = 1
+  FLAGS = \\(ROK\\)
+  RV = $ADDR
+  SV = PVIO\\($ADDR\\) at $ADDR
+    REFCNT = 3
+    FLAGS = \\(OBJECT\\)
+    IV = 0
+    $NV
+    STASH = $ADDR\s+"IO::Handle"
+    IFP = $ADDR
+    OFP = $ADDR
+    DIRP = 0x0
+    LINES = 0
+    PAGE = 0
+    PAGE_LEN = 60
+    LINES_LEFT = 0
+    TOP_GV = 0x0
+    FMT_GV = 0x0
+    BOTTOM_GV = 0x0
+    TYPE = \'>\'
+    FLAGS = 0x0');
End of Patch.

Reply via email to