]> granicus.if.org Git - postgresql/commitdiff
fflush() FILE buffer to descriptor so stat call gets proper size in fseeko.c.
authorBruce Momjian <bruce@momjian.us>
Tue, 23 Mar 2004 05:26:53 +0000 (05:26 +0000)
committerBruce Momjian <bruce@momjian.us>
Tue, 23 Mar 2004 05:26:53 +0000 (05:26 +0000)
Fixed problem with pg_dump tar backups.  Only happens on platforms that
use our port/fseeko.c, which is currently BSD/OS and NetBSD.

src/port/fseeko.c

index 9bb8a110bf74d6011f2b4968483c165b49687aff..af35dd67ccae44cc7b233c25708872dc2df130e3 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/port/fseeko.c,v 1.13 2003/11/29 19:52:13 pgsql Exp $
+ *       $PostgreSQL: pgsql/src/port/fseeko.c,v 1.14 2004/03/23 05:26:53 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -68,6 +68,7 @@ fseeko(FILE *stream, off_t offset, int whence)
 #ifdef bsdi
                        flockfile(stream);
 #endif
+                       fflush(stream); /* force writes to fd for stat() */
                        if (fstat(fileno(stream), &filestat) != 0)
                                goto failure;
                        floc = filestat.st_size;