OSDN Git Service

Buildfarm still unhappy, so I'll bet it's EACCES not EPERM.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 1 Mar 2010 14:54:00 +0000 (14:54 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 1 Mar 2010 14:54:00 +0000 (14:54 +0000)
src/port/copydir.c

index cf3e11f..0927e62 100644 (file)
@@ -11,7 +11,7 @@
  *     as a service.
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/port/copydir.c,v 1.35 2010/03/01 00:04:06 stark Exp $
+ *       $PostgreSQL: pgsql/src/port/copydir.c,v 1.36 2010/03/01 14:54:00 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -221,8 +221,9 @@ fsync_fname(char *fname, bool isdir)
        int                     fd;
        int             returncode;
 
-       /* Some OSs require directories to be opened read-only whereas
-        * other systems don't allow us to fsync files opened read-only so
+       /*
+        * Some OSs require directories to be opened read-only whereas
+        * other systems don't allow us to fsync files opened read-only; so
         * we need both cases here 
         */
        if (!isdir)
@@ -234,10 +235,11 @@ fsync_fname(char *fname, bool isdir)
                                                   O_RDONLY | PG_BINARY,
                                                   S_IRUSR | S_IWUSR);
 
-       /* Some OSs don't allow us to open directories at all 
-        * (Windows returns EPERM) 
+       /*
+        * Some OSs don't allow us to open directories at all 
+        * (Windows returns EACCES) 
         */
-       if (fd < 0 && isdir && (errno == EISDIR || errno == EPERM))
+       if (fd < 0 && isdir && (errno == EISDIR || errno == EACCES))
                return;
 
        else if (fd < 0)