X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/5dc0d6134ebb76636f69238201dde15cec972fd0..e858de61083066071eb1526df39bdaa094032c61:/perl.c?ds=sidebyside diff --git a/perl.c b/perl.c index e7600df..242535a 100644 --- a/perl.c +++ b/perl.c @@ -830,24 +830,23 @@ print \" \\@INC:\\n @INC\\n\";"); main_cv = compcv = (CV*)NEWSV(1104,0); sv_upgrade((SV *)compcv, SVt_PVCV); CvUNIQUE_on(compcv); -#ifdef USE_THREADS - CvOWNER(compcv) = 0; - New(666, CvMUTEXP(compcv), 1, pthread_mutex_t); - MUTEX_INIT(CvMUTEXP(compcv)); - New(666, CvCONDP(compcv), 1, pthread_cond_t); - COND_INIT(CvCONDP(compcv)); -#endif /* USE_THREADS */ comppad = newAV(); av_push(comppad, Nullsv); curpad = AvARRAY(comppad); comppad_name = newAV(); comppad_name_fill = 0; + min_intro_pending = 0; + padix = 0; #ifdef USE_THREADS av_store(comppad_name, 0, newSVpv("@_", 2)); + curpad[0] = (SV*)newAV(); + CvOWNER(compcv) = 0; + New(666, CvMUTEXP(compcv), 1, pthread_mutex_t); + MUTEX_INIT(CvMUTEXP(compcv)); + New(666, CvCONDP(compcv), 1, pthread_cond_t); + COND_INIT(CvCONDP(compcv)); #endif /* USE_THREADS */ - min_intro_pending = 0; - padix = 0; comppadlist = newAV(); AvREAL_off(comppadlist); @@ -1333,6 +1332,7 @@ perl_eval_pv(p, croak_on_error) char* p; I32 croak_on_error; { + dTHR; dSP; SV* sv = newSVpv(p, 0); @@ -2323,13 +2323,13 @@ dARGS static void nuke_stacks() { + dTHR; Safefree(cxstack); Safefree(tmps_stack); DEBUG( { Safefree(debname); Safefree(debdelim); } ) -<<<< } static PerlIO *tmpfp; /* moved outside init_lexer() because of UNICOS bug */ @@ -2749,6 +2749,7 @@ my_failure_exit() static void my_exit_jump() { + dTHR; register CONTEXT *cx; I32 gimme; SV **newsp;