sv_peek didn't add quotes before, doesn't need them now
authorBrian Fraser <fraserbn@gmail.com>
Mon, 5 Aug 2013 04:01:35 +0000 (01:01 -0300)
committerBrian Fraser <fraserbn@gmail.com>
Sat, 4 Jan 2014 18:37:47 +0000 (15:37 -0300)
dump.c
ext/XS-APItest/t/svpeek.t

diff --git a/dump.c b/dump.c
index f05f11e..8d42fcc 100644 (file)
--- a/dump.c
+++ b/dump.c
@@ -421,7 +421,7 @@ Perl_sv_peek(pTHX_ SV *sv)
     if (type == SVt_PVCV) {
         SV * const tmp = newSVpvs_flags("", SVs_TEMP);
         GV* gvcv = CvGV(sv);
-        Perl_sv_catpvf(aTHX_ t, "CV(\"%s\")", gvcv
+        Perl_sv_catpvf(aTHX_ t, "CV(%s)", gvcv
                        ? generic_pv_escape( tmp, GvNAME(gvcv), GvNAMELEN(gvcv), GvNAMEUTF8(gvcv))
                        : "");
        goto finish;
index 89fda59..5d18297 100644 (file)
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 50;
+use Test::More tests => 52;
 
 BEGIN { use_ok('XS::APItest') };
 
@@ -74,6 +74,11 @@ if ($^O eq 'vos') {
   $VAR = sub { "VAR" };
   is (DPeek ($VAR),    '\CV(__ANON__)',        ' $VAR sub { "VAR" }');
   is (DPeek (\$VAR),   '\\\CV(__ANON__)',      '\$VAR sub { "VAR" }');
+  
+  $VAR = eval qq{sub \x{30cd} { "VAR" } \\&\x{30cd}};
+  is (DPeek ($VAR),     '\CV(\x{30cd})',        ' $VAR sub \x{30cd} { "VAR" }');
+  is (DPeek (\$VAR),    '\\\\CV(\x{30cd})',      '\$VAR sub \x{30cd} { "VAR" }');
+
   $VAR = 0;
 
   is (DPeek (\&VAR),   '\CV(VAR)',             '\&VAR');