]> git.saurik.com Git - apple/libc.git/blobdiff - stdio/FreeBSD/fclose.c.patch
Libc-763.11.tar.gz
[apple/libc.git] / stdio / FreeBSD / fclose.c.patch
index 1f6be87d2b71a9134cebe5f880e1e2c87954546b..7e5eef7bf7bae9d9d69f031e4cddc22bbd37bf88 100644 (file)
@@ -1,14 +1,12 @@
-Index: fclose.c
-===================================================================
-RCS file: /cvs/root/Libc/stdio/FreeBSD/fclose.c,v
-retrieving revision 1.2
-diff -u -d -b -w -p -r1.2 fclose.c
---- fclose.c   2003/05/20 22:22:40     1.2
-+++ fclose.c   2005/02/14 21:57:28
-@@ -53,6 +53,10 @@ fclose(FILE *fp)
+--- fclose.c.bsdnew    2009-11-11 13:33:03.000000000 -0800
++++ fclose.c   2009-11-11 13:33:03.000000000 -0800
+@@ -49,6 +49,13 @@ fclose(FILE *fp)
  {
        int r;
  
++      if (!__sdidinit)
++              __sinit();
++
 +      if (fp == NULL) {
 +              errno = EFAULT;
 +              return (EOF);
@@ -16,3 +14,12 @@ diff -u -d -b -w -p -r1.2 fclose.c
        if (fp->_flags == 0) {  /* not open! */
                errno = EBADF;
                return (EOF);
+@@ -65,7 +72,7 @@ fclose(FILE *fp)
+               FREELB(fp);
+       fp->_file = -1;
+       fp->_r = fp->_w = 0;    /* Mess up if reaccessed. */
+-      fp->_flags = 0;         /* Release this FILE for reuse. */
++      __sfprelease(fp);       /* Release this FILE for reuse. */
+       FUNLOCKFILE(fp);
+       return (r);
+ }