diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1999-08-26 23:53:33 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1999-08-26 23:53:33 +0000 |
commit | 0ae6046c5548636c0d642d76d3c8222375a744dd (patch) | |
tree | 700dbf83642d10fb22f2e9e978016c20f6710512 /ext/Thread/Thread.xs | |
parent | 7138795d405ad4d121e3ab8f0d48579aee60358b (diff) | |
download | perl-0ae6046c5548636c0d642d76d3c8222375a744dd.tar.gz |
new thread should set current interp in TLS
p4raw-id: //depot/perl@4032
Diffstat (limited to 'ext/Thread/Thread.xs')
-rw-r--r-- | ext/Thread/Thread.xs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ext/Thread/Thread.xs b/ext/Thread/Thread.xs index ad99e2c409..772d41a495 100644 --- a/ext/Thread/Thread.xs +++ b/ext/Thread/Thread.xs @@ -86,9 +86,14 @@ threadstart(void *arg) I32 oldscope = PL_scopestack_ix; I32 retval; SV *sv; - AV *av = newAV(); + AV *av; int i, ret; dJMPENV; + +#if defined(MULTIPLICITY) + PERL_SET_INTERP(thr->interp); +#endif + DEBUG_S(PerlIO_printf(PerlIO_stderr(), "new thread %p waiting to start\n", thr)); @@ -114,6 +119,7 @@ threadstart(void *arg) DEBUG_S(PerlIO_printf(PerlIO_stderr(), "new thread %p starting at %s\n", thr, SvPEEK(TOPs))); + av = newAV(); sv = POPs; PUTBACK; ENTER; |