From 1ecafd622e4781899199f4e244a67b5c583c19a7 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Mon, 1 Mar 2010 14:54:00 +0000
Subject: [PATCH] Buildfarm still unhappy, so I'll bet it's EACCES not EPERM.

---
 src/port/copydir.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/src/port/copydir.c b/src/port/copydir.c
index cf3e11f5bd1..0927e62fe61 100644
--- a/src/port/copydir.c
+++ b/src/port/copydir.c
@@ -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)
-- 
GitLab