diff options
author | Reini Urban <rurban@x-ray.at> | 2008-06-24 14:07:01 +0200 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2008-06-24 14:35:11 +0000 |
commit | 7367e658df87ee1f29b1fa68bdefb1966bf4b5d9 (patch) | |
tree | 3f50f592c6c1a6663e8cc0743ac0a7cbee7846fd /dump.c | |
parent | fa8d1836673cdd4f08959b2dc7d9145ed5db7c50 (diff) | |
download | perl-7367e658df87ee1f29b1fa68bdefb1966bf4b5d9.tar.gz |
fix debop with pad const
Message-ID: <4860C745.2020307@x-ray.at>
p4raw-id: //depot/perl@34085
Diffstat (limited to 'dump.c')
-rw-r--r-- | dump.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -2002,7 +2002,12 @@ Perl_debop(pTHX_ const OP *o) switch (o->op_type) { case OP_CONST: case OP_HINTSEVAL: - PerlIO_printf(Perl_debug_log, "(%s)", SvPEEK(cSVOPo_sv)); + /* with ITHREADS, consts are stored in the pad, and the right pad + * may not be active here, so check. + * (((SVOP*)o)->op_sv ? ((SVOP*)o)->op_sv : ((my_perl->Icurpad)[(o)->op_targ])) + */ + if (((SVOP*)o)->op_sv) + PerlIO_printf(Perl_debug_log, "(%s)", SvPEEK(cSVOPo_sv)); break; case OP_GVSV: case OP_GV: |