aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2015-05-05 08:30:28 -0400
committerRobert Haas <rhaas@postgresql.org>2015-05-05 09:16:39 -0400
commit603fe0181ad083ddc83f291fdce8ddc43d617154 (patch)
tree70b117cc069029c4c7ea3bc93ba79050ae4ab4cb
parentd8ac77ab178ddb2ae043b8c463cd30c031e793d0 (diff)
downloadpostgresql-603fe0181ad083ddc83f291fdce8ddc43d617154.tar.gz
postgresql-603fe0181ad083ddc83f291fdce8ddc43d617154.zip
Fix some problems with patch to fsync the data directory.
pg_win32_is_junction() was a typo for pgwin32_is_junction(). open() was used not only in a two-argument form, which breaks on Windows, but also where BasicOpenFile() should have been used. Per reports from Andrew Dunstan and David Rowley.
-rw-r--r--src/backend/storage/file/fd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/storage/file/fd.c b/src/backend/storage/file/fd.c
index f34e618ac5a..295eeb040ae 100644
--- a/src/backend/storage/file/fd.c
+++ b/src/backend/storage/file/fd.c
@@ -2449,7 +2449,7 @@ pre_sync_fname(char *fname, bool isdir)
{
int fd;
- fd = open(fname, O_RDONLY | PG_BINARY);
+ fd = BasicOpenFile(fname, O_RDONLY | PG_BINARY, 0);
/*
* Some OSs don't allow us to open directories at all (Windows returns
@@ -2508,7 +2508,7 @@ walkdir(char *path, void (*action) (char *fname, bool isdir))
#ifndef WIN32
else if (S_ISLNK(fst.st_mode))
#else
- else if (pg_win32_is_junction(subpath))
+ else if (pgwin32_is_junction(subpath))
#endif
{
#if defined(HAVE_READLINK) || defined(WIN32)