summaryrefslogtreecommitdiff
path: root/pp.c
diff options
context:
space:
mode:
authorNick Ing-Simmons <nik@tiuk.ti.com>1997-11-01 00:18:52 +0000
committerNick Ing-Simmons <nik@tiuk.ti.com>1997-11-01 00:18:52 +0000
commitaf702f0e61214b54e323d12ffeaff4e64bee707c (patch)
tree2c9b5734fbd3c421d2d20c9e6877c8d10957e47c /pp.c
parentf890e7c81bc0e52bedc3dcefbcd144d0750c257d (diff)
parenta863c7d16499251f020c5d26d232aa865fa0b197 (diff)
downloadperl-af702f0e61214b54e323d12ffeaff4e64bee707c.tar.gz
Integrate mainline @ 18:15 CST 31 Oct 1997
p4raw-id: //depot/ansiperl@199
Diffstat (limited to 'pp.c')
-rw-r--r--pp.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/pp.c b/pp.c
index 49860d472d..ac722c4f76 100644
--- a/pp.c
+++ b/pp.c
@@ -413,7 +413,6 @@ refto(SV *sv)
else if (SvPADTMP(sv))
sv = newSVsv(sv);
else {
- dTHR; /* just for SvREFCNT_inc */
SvTEMP_off(sv);
(void)SvREFCNT_inc(sv);
}
@@ -4305,3 +4304,15 @@ PP(pp_lock)
SETs(retsv);
RETURN;
}
+
+PP(pp_specific)
+{
+#ifdef USE_THREADS
+ dSP;
+ SV **svp = av_fetch(thr->specific, op->op_targ, TRUE);
+ XPUSHs(svp ? *svp : &sv_undef);
+#else
+ DIE("tried to access thread-specific data in non-threaded perl");
+#endif /* USE_THREADS */
+ RETURN;
+}