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.
This commit is contained in:
Robert Haas 2015-05-05 08:30:28 -04:00
parent c0574cd5aa
commit 456ff08638
1 changed files with 2 additions and 2 deletions

View File

@ -2450,7 +2450,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
@ -2509,7 +2509,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)