if (mpos < opos) {
SV *code = indirect_detag(hint);
- if (hint) {
+ if (code) {
SV *file;
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);