summaryrefslogtreecommitdiff
path: root/op.c
diff options
context:
space:
mode:
authorReini Urban <rurban@x-ray.at>2008-04-15 16:09:11 +0200
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2008-04-15 13:15:56 +0000
commitc53f1caa29d8829011cc4dd8948bd9947d957fba (patch)
tree76e76909634178796c8ebcc30d805f25adce1b5e /op.c
parentd3004175efad37b09a53f117c749139ff8df0a47 (diff)
downloadperl-c53f1caa29d8829011cc4dd8948bd9947d957fba.tar.gz
invalid cop_free of nullified cop. How to fix?
From: "Reini Urban" <rurban@x-ray.at> Message-ID: <6910a60804150509j3c100fc4t2ed303ae0124ba15@mail.gmail.com> p4raw-id: //depot/perl@33687
Diffstat (limited to 'op.c')
-rw-r--r--op.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/op.c b/op.c
index 21aa23d942..6823cc991e 100644
--- a/op.c
+++ b/op.c
@@ -495,8 +495,6 @@ Perl_op_free(pTHX_ OP *o)
op_free(kid);
}
}
- if (type == OP_NULL)
- type = (OPCODE)o->op_targ;
#ifdef PERL_DEBUG_READONLY_OPS
Slab_to_rw(o);
@@ -508,6 +506,9 @@ Perl_op_free(pTHX_ OP *o)
cop_free((COP*)o);
}
+ if (type == OP_NULL)
+ type = (OPCODE)o->op_targ;
+
op_clear(o);
if (o->op_latefree) {
o->op_latefreed = 1;