Updated.
[p5sagit/p5-mst-13.2.git] / doio.c
diff --git a/doio.c b/doio.c
index 7f2aee1..c01c14e 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -344,7 +344,7 @@ register GV *gv;
            if (inplace) {
                TAINT_PROPER("inplace open");
                if (strEQ(oldname,"-")) {
-                   defoutgv = gv_fetchpv("STDOUT",TRUE,SVt_PVIO);
+                   setdefout(gv_fetchpv("STDOUT",TRUE,SVt_PVIO));
                    return IoIFP(GvIOp(gv));
                }
 #ifndef FLEXFILENAMES
@@ -423,7 +423,7 @@ register GV *gv;
                    do_close(gv,FALSE);
                    continue;
                }
-               defoutgv = argvoutgv;
+               setdefout(argvoutgv);
                lastfd = fileno(IoIFP(GvIOp(argvoutgv)));
                (void)Fstat(lastfd,&statbuf);
 #ifdef HAS_FCHMOD
@@ -448,7 +448,7 @@ register GV *gv;
     }
     if (inplace) {
        (void)do_close(argvoutgv,FALSE);
-       defoutgv = gv_fetchpv("STDOUT",TRUE,SVt_PVIO);
+       setdefout(gv_fetchpv("STDOUT",TRUE,SVt_PVIO));
     }
     return Nullfp;
 }
@@ -577,7 +577,7 @@ GV *gv;
            (void)ungetc(ch, IoIFP(io));
            return FALSE;
        }
-#ifdef USE_STDIO_PTR
+#if defined(USE_STDIO_PTR) && defined(STDIO_CNT_LVALUE)
        if (FILE_cnt(IoIFP(io)) < -1)
            FILE_cnt(IoIFP(io)) = -1;
 #endif