summaryrefslogtreecommitdiff
path: root/pp_hot.c
diff options
context:
space:
mode:
authorMalcolm Beattie <mbeattie@sable.ox.ac.uk>1997-10-23 09:22:40 +0000
committerMalcolm Beattie <mbeattie@sable.ox.ac.uk>1997-10-23 09:22:40 +0000
commite55aaa0ea8ae9df2251fb793d58ce52f2d4ed736 (patch)
tree3ebcd6bf8d63887173e00a8588bb2eb51e1c07d3 /pp_hot.c
parentf81e73367db8ca5c7f6b9b2cd46247cf88cf9e89 (diff)
downloadperl-e55aaa0ea8ae9df2251fb793d58ce52f2d4ed736.tar.gz
Fix refcounts for lock/magic_mutexfree. Make OP_LOCK auto-ref
its argument using ck_rfun as OP_DEFINED. Make pp_lock return a ref to its argument for AV, HV, CV. p4raw-id: //depot/perl@170
Diffstat (limited to 'pp_hot.c')
-rw-r--r--pp_hot.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/pp_hot.c b/pp_hot.c
index c19e928f67..bc46cca740 100644
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -1866,6 +1866,7 @@ PP(pp_entersub)
DEBUG_L(PerlIO_printf(PerlIO_stderr(), "%p: pp_entersub lock %p\n",
thr, sv);)
MUTEX_UNLOCK(MgMUTEXP(mg));
+ SvREFCNT_inc(sv); /* Keep alive until magic_mutexfree */
save_destructor(unlock_condpair, sv);
}
MUTEX_LOCK(CvMUTEXP(cv));