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_IFDIR _S_IFDIR
#define S_IFREG _S_IFREG #define S_IFREG _S_IFREG
#define W_OK 2
#define R_OK 4
#else #else
#define tell(fd) lseek(fd, 0, SEEK_CUR) #define tell(fd) lseek(fd, 0, SEEK_CUR)
#endif //_MSC_VER #endif //_MSC_VER
@@ -113,10 +116,30 @@
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// static functions // static functions
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
bool wxFile::Exists(const char *sz) bool wxFile::Exists(const char *name)
{ {
struct stat st; 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;
} }
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------