]> 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:27:02 +0000 (05:27 +0000)
committerBruce Momjian <bruce@momjian.us>
Tue, 23 Mar 2004 05:27:02 +0000 (05:27 +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 3b43d3051b97877243ddc86baf443029e02f82da..ac18d7bfa0e1a75ed774c43e5b43944cd862332d 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/port/fseeko.c,v 1.12 2003/08/04 02:40:20 momjian Exp $
+ *       $PostgreSQL: pgsql/src/port/fseeko.c,v 1.12.4.1 2004/03/23 05:27:02 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;