X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl.c;h=d0d4e9ae172a51c997965a46c168b6a37e6caef0;hb=ae178db11db50e8d46c66980e186cfba029f0cb9;hp=ed88bc3eb42653f4ce43e949a1f70e7752bb1a04;hpb=e3321bb0a51658948df39ab78e5b59a5eb3da71c;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perl.c b/perl.c index ed88bc3..d0d4e9a 100644 --- a/perl.c +++ b/perl.c @@ -328,8 +328,6 @@ perl_destruct(pTHXx) PL_warnhook = Nullsv; SvREFCNT_dec(PL_diehook); PL_diehook = Nullsv; - SvREFCNT_dec(PL_parsehook); - PL_parsehook = Nullsv; /* call exit list functions */ while (PL_exitlistlen-- > 0) @@ -409,6 +407,11 @@ perl_destruct(pTHXx) Safefree(PL_screamnext); PL_screamnext = 0; + /* float buffer */ + Safefree(PL_efloatbuf); + PL_efloatbuf = Nullch; + PL_efloatsize = 0; + /* startup and shutdown function lists */ SvREFCNT_dec(PL_beginav); SvREFCNT_dec(PL_endav); @@ -438,6 +441,10 @@ perl_destruct(pTHXx) PL_defstash = 0; SvREFCNT_dec(hv); + /* clear queued errors */ + SvREFCNT_dec(PL_errors); + PL_errors = Nullsv; + FREETMPS; if (destruct_level >= 2 && ckWARN_d(WARN_INTERNAL)) { if (PL_scopestack_ix != 0)