summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMalcolm Beattie <mbeattie@sable.ox.ac.uk>1998-02-03 16:00:07 +0000
committerMalcolm Beattie <mbeattie@sable.ox.ac.uk>1998-02-03 16:00:07 +0000
commite1c148c28bf3335bbd0ad9a2070b0917265c00c3 (patch)
tree4486f9b0e25136960b64fe6923a259aa6da45816
parent8db299b857ebbe26dfb8bdded5060d4e93e0ef7c (diff)
downloadperl-e1c148c28bf3335bbd0ad9a2070b0917265c00c3.tar.gz
Replaced two occurrences of THREADSV(find_thread_sv(...)) (order
of execution causes core dump if threadsvp is moved). Replaced lvalue occurrence of AvARRAY(av) with SvPVX(av) (former does cast). p4raw-id: //depot/perl@459
-rw-r--r--av.c2
-rw-r--r--perl.c13
2 files changed, 3 insertions, 12 deletions
diff --git a/av.c b/av.c
index 20c77d8444..ae5ffab472 100644
--- a/av.c
+++ b/av.c
@@ -367,7 +367,7 @@ av_undef(register AV *av)
SvREFCNT_dec(AvARRAY(av)[--key]);
}
Safefree(AvALLOC(av));
- AvARRAY(av) = 0;
+ SvPVX(av) = 0;
AvALLOC(av) = 0;
SvPVX(av) = 0;
AvMAX(av) = AvFILLp(av) = -1;
diff --git a/perl.c b/perl.c
index 54fb772d4e..1fa23195df 100644
--- a/perl.c
+++ b/perl.c
@@ -935,11 +935,7 @@ print \" \\@INC:\\n @INC\\n\";");
/* now that script is parsed, we can modify record separator */
SvREFCNT_dec(rs);
rs = SvREFCNT_inc(nrs);
-#ifdef USE_THREADS
- sv_setsv(THREADSV(find_threadsv("/")), rs);
-#else
- sv_setsv(GvSV(gv_fetchpv("/", TRUE, SVt_PV)), rs);
-#endif /* USE_THREADS */
+ sv_setsv(perl_get_sv("/", TRUE), rs);
if (do_undump)
my_unexec();
@@ -2509,12 +2505,7 @@ init_predump_symbols(void)
GV *tmpgv;
GV *othergv;
-#ifdef USE_THREADS
- sv_setpvn(THREADSV(find_threadsv("\"")), " ", 1);
-#else
- sv_setpvn(GvSV(gv_fetchpv("\"", TRUE, SVt_PV)), " ", 1);
-#endif /* USE_THREADS */
-
+ sv_setpvn(perl_get_sv("\"", TRUE), " ", 1);
stdingv = gv_fetchpv("STDIN",TRUE, SVt_PVIO);
GvMULTI_on(stdingv);
IoIFP(GvIOp(stdingv)) = PerlIO_stdin();