file creation on f[re]open() was still wrong
authoreck <none@none>
Mon, 9 Apr 1990 15:55:51 +0000 (15:55 +0000)
committereck <none@none>
Mon, 9 Apr 1990 15:55:51 +0000 (15:55 +0000)
lang/cem/libcc.ansi/stdio/fopen.c
lang/cem/libcc.ansi/stdio/freopen.c

index 5fe89be..bc2e1ed 100644 (file)
@@ -88,7 +88,7 @@ fopen(const char *name, const char *mode)
         */
        if ((rwflags & O_TRUNC)
            || (((fd = _open(name, rwmode)) < 0)
-                   && (flags & _IOWRITE))) {
+                   && (rwflags & O_CREAT))) {
                if (((fd = _creat(name, PMODE)) > 0) && flags  | _IOREAD) {
                        (void) _close(fd);
                        fd = _open(name, rwmode);
index af384b7..41887f8 100644 (file)
@@ -68,7 +68,7 @@ freopen(const char *name, const char *mode, FILE *stream)
 
        if ((rwflags & O_TRUNC)
            || (((fd = _open(name, rwmode)) < 0)
-                   && (flags & _IOWRITE))) {
+                   && (rwflags & O_CREAT))) {
                if (((fd = _creat(name, PMODE)) < 0) && flags | _IOREAD) {
                        (void) _close(fd);
                        fd = _open(name, rwmode);