Re: A new PerlIO coredump
Nick Ing-Simmons [Fri, 20 Apr 2001 14:29:41 +0000 (15:29 +0100)]
Message-Id: <200104201329.OAA16021@mikado.tiuk.ti.com>

p4raw-id: //depot/perl@9763

doio.c

diff --git a/doio.c b/doio.c
index 631149d..fee610d 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -555,7 +555,10 @@ Perl_do_openn(pTHX_ GV *gv, register char *name, I32 len, int as_raw,
        if (savefd != fd) {
            Pid_t pid;
            SV *sv;
-           PerlLIO_dup2(fd, savefd);
+           if (PerlLIO_dup2(fd, savefd) < 0) {
+              (void)PerlIO_close(fp);
+              goto say_false;
+           }
 #ifdef VMS
            if (savefd != PerlIO_fileno(PerlIO_stdin())) {
              char newname[FILENAME_MAX+1];