static wxFile::Access() added

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
1998-08-11 21:04:48 +00:00
parent d4a00e065b
commit d1427b7053

View File

@@ -87,6 +87,9 @@
#define S_IFDIR _S_IFDIR
#define S_IFREG _S_IFREG
#define W_OK 2
#define R_OK 4
#else
#define tell(fd) lseek(fd, 0, SEEK_CUR)
#endif //_MSC_VER
@@ -113,10 +116,30 @@
// ----------------------------------------------------------------------------
// static functions
// ----------------------------------------------------------------------------
bool wxFile::Exists(const char *sz)
bool wxFile::Exists(const char *name)
{
struct stat st;
return !access(sz, 0) && !stat(sz, &st) && (st.st_mode & S_IFREG);
return !access(name, 0) && !stat(name, &st) && (st.st_mode & S_IFREG);
}
bool wxFile::Access(const char *name, OpenMode mode)
{
int how;
switch ( mode ) {
case read:
how = R_OK;
break;
case write:
how = W_OK;
break;
default:
wxFAIL_MSG("bad wxFile::Access mode parameter.");
}
return access(name, how) == 0;
}
// ----------------------------------------------------------------------------