Mask out X_OK to avoid problem on Vista. X_OK was just ignored by access()

2008-05-30  Tor Lillqvist  <tml@novell.com>

	* glib/gstdio.c (g_access) [Win32]: Mask out X_OK to avoid problem
	on Vista. X_OK was just ignored by access() in earlier Microsoft C
	libraries. (Which is fine as executability has little meaning on
	Windows.) The one on Vista returns an error if X_OK is passed.


svn path=/trunk/; revision=6961
This commit is contained in:
Tor Lillqvist 2008-05-29 23:05:35 +00:00 committed by Tor Lillqvist
parent 40c54c33eb
commit 87bc41714f
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2008-05-30 Tor Lillqvist <tml@novell.com>
* glib/gstdio.c (g_access) [Win32]: Mask out X_OK to avoid problem
on Vista. X_OK was just ignored by access() in earlier Microsoft C
libraries. (Which is fine as executability has little meaning on
Windows.) The one on Vista returns an error if X_OK is passed.
2008-05-29 Tor Lillqvist <tml@novell.com>
* glib/gstdio.h

View File

@ -85,7 +85,7 @@ g_access (const gchar *filename,
return -1;
}
retval = _waccess (wfilename, mode);
retval = _waccess (wfilename, mode & ~X_OK);
save_errno = errno;
g_free (wfilename);