]> git.saurik.com Git - apple/libc.git/blobdiff - stdio/FreeBSD/fclose.c.patch
Libc-583.tar.gz
[apple/libc.git] / stdio / FreeBSD / fclose.c.patch
index 1f6be87d2b71a9134cebe5f880e1e2c87954546b..176981bde4fddabb62cd82eece5f729f4e5d1383 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.orig      2009-02-15 03:11:22.000000000 -0800
++++ fclose.c   2009-02-15 19:01:59.000000000 -0800
+@@ -53,6 +53,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);
+@@ -69,7 +76,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);
+ }