else PerlLIO_close(fd[1]);
goto badexit;
}
-
+#if defined(HAS_FCNTL) && defined(F_SETFD)
+ fcntl(fd[0],F_SETFD,fd[0] > PL_maxsysfd); /* ensure close-on-exec */
+ fcntl(fd[1],F_SETFD,fd[1] > PL_maxsysfd); /* ensure close-on-exec */
+#endif
RETPUSHYES;
badexit:
djSP;
int items = (SP - PL_stack_base) - TOPMARK;
if (items == 2) {
+ SV *sv;
EXTEND(SP, 1);
- PUSHs(sv_2mortal(newSViv(sv_len(*SP))));
+ sv = sv_2mortal(newSViv(sv_len(*SP)));
+ PUSHs(sv);
PUTBACK;
}
return pp_send(ARGS);