OSDN Git Service

Fix thinko in pg_read_file: testing for negative result is not the way
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 15 Oct 2005 19:47:09 +0000 (19:47 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 15 Oct 2005 19:47:09 +0000 (19:47 +0000)
to determine whether fread() failed.

src/backend/utils/adt/genfile.c

index 06ff9af..2e0a247 100644 (file)
@@ -9,7 +9,7 @@
  * Author: Andreas Pflug <pgadmin@pse-consulting.de>
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/utils/adt/genfile.c,v 1.7 2005/10/15 02:49:28 momjian Exp $
+ *       $PostgreSQL: pgsql/src/backend/utils/adt/genfile.c,v 1.8 2005/10/15 19:47:09 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -134,7 +134,7 @@ pg_read_file(PG_FUNCTION_ARGS)
 
        nbytes = fread(VARDATA(buf), 1, (size_t) bytes_to_read, file);
 
-       if (nbytes < 0)
+       if (ferror(file))
                ereport(ERROR,
                                (errcode_for_file_access(),
                                 errmsg("could not read file \"%s\": %m", filename)));