41void UnixDirectory::read_directory()
47 int level = _level + 1;
66 if (!statres &&
S_ISDIR(st.st_mode))
69 entry =
new UnixEntry(
this);
86 entry->_data.nFileSizeLow = st.st_size & 0xFFFFFFFF;
87 entry->_data.nFileSizeHigh = st.st_size >> 32;
94 entry->_bhfi.nFileIndexHigh = 0;
96 entry->_bhfi.nNumberOfLinks = st.st_nlink;
100 entry->_data.nFileSizeLow = 0;
101 entry->_data.nFileSizeHigh = 0;
123const void* UnixDirectory::get_next_path_component(
const void*
p)
127 while(*
s && *
s!=
TEXT(
'/'))
130 while(*
s ==
TEXT(
'/'))
140Entry* UnixDirectory::find_entry(
const void*
p)
151 }
while(*
p++ == *
q++);
159bool UnixEntry::get_path(
PTSTR path,
size_t path_count)
const
164 if (!
path || path_count==0)
167 if ( path_count > 1 )
178 if (
len+
l+1 >= path_count )
181 if (
l + 2 > path_count )
184 len = path_count -
l - 2;
188 if (
l+2 >= path_count )
198 if (
len+
l >= path_count )
200 if (
l + 1 > path_count )
203 len = path_count -
l - 1;
206 if (
l+1 >= path_count )
214 if ( !
level && (
len+1 < path_count) )
GLdouble GLdouble GLdouble GLdouble q
int __cdecl closedir(DIR *)
DIR *__cdecl opendir(const char *)
struct dirent *__cdecl readdir(DIR *)
#define memcpy(s1, s2, n)
#define memmove(s1, s2, n)
BOOL time_to_filetime(const time_t *t, FILETIME *ftime)
#define FILE_ATTRIBUTE_HIDDEN
#define FILE_ATTRIBUTE_DIRECTORY
base of all file and directory entries