| /* common Win32 functions for MinGW and Cygwin */ |
| #ifndef GIT_WINDOWS_NATIVE /* Not defined for Cygwin */ |
| static inline int file_attr_to_st_mode (DWORD attr) |
| if (attr & FILE_ATTRIBUTE_DIRECTORY) |
| if (!(attr & FILE_ATTRIBUTE_READONLY)) |
| static inline int get_file_attr(const char *fname, WIN32_FILE_ATTRIBUTE_DATA *fdata) |
| if (GetFileAttributesExA(fname, GetFileExInfoStandard, fdata)) |
| switch (GetLastError()) { |
| case ERROR_ACCESS_DENIED: |
| case ERROR_SHARING_VIOLATION: |
| case ERROR_LOCK_VIOLATION: |
| case ERROR_SHARING_BUFFER_EXCEEDED: |
| case ERROR_BUFFER_OVERFLOW: |
| case ERROR_NOT_ENOUGH_MEMORY: |