From: Vincent Pit Date: Sat, 23 May 2009 22:32:22 +0000 (+0200) Subject: Stop leaking the package name passed to the hook X-Git-Tag: v0.13~4 X-Git-Url: http://git.vpit.fr/?a=commitdiff_plain;h=13391a9b36924ccf07e9eeec1bf96943488b3207;p=perl%2Fmodules%2Findirect.git Stop leaking the package name passed to the hook --- diff --git a/indirect.xs b/indirect.xs index 86675c8..896ae7f 100644 --- a/indirect.xs +++ b/indirect.xs @@ -521,19 +521,19 @@ STATIC OP *indirect_ck_entersub(pTHX_ OP *o) { line_t line; dSP; + ENTER; + SAVETMPS; + onamesv = sv_mortalcopy(onamesv); mnamesv = sv_mortalcopy(mnamesv); #ifdef USE_ITHREADS - file = newSVpv(CopFILE(&PL_compiling), 0); + file = sv_2mortal(newSVpv(CopFILE(&PL_compiling), 0)); #else file = sv_mortalcopy(CopFILESV(&PL_compiling)); #endif line = CopLINE(&PL_compiling); - ENTER; - SAVETMPS; - PUSHMARK(SP); EXTEND(SP, 4); PUSHs(onamesv);