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:
@@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user