mirror of https://github.com/mgba-emu/mgba.git
VFS: Fix directory node listing on some filesystems
This commit is contained in:
parent
c21e6bf0b1
commit
641154b810
1
CHANGES
1
CHANGES
|
@ -33,6 +33,7 @@ Other fixes:
|
|||
- Qt: Fix static compilation in MinGW (fixes mgba.io/i/1769)
|
||||
- Qt: Fix a race condition in the frame inspector
|
||||
- SM83: Simplify register pair access on big endian
|
||||
- VFS: Fix directory node listing on some filesystems
|
||||
Misc:
|
||||
- 3DS: Use "wide mode" where applicable for slightly better filtering
|
||||
- GB: Allow pausing event loop while CPU is blocked
|
||||
|
|
|
@ -151,9 +151,10 @@ static enum VFSType _vdeType(struct VDirEntry* vde) {
|
|||
#if !defined(WIN32) && !defined(__HAIKU__)
|
||||
if (vdede->ent->d_type == DT_DIR) {
|
||||
return VFS_DIRECTORY;
|
||||
} else if (vdede->ent->d_type == DT_REG) {
|
||||
return VFS_FILE;
|
||||
}
|
||||
return VFS_FILE;
|
||||
#else
|
||||
#endif
|
||||
const char* dir = vdede->p->path;
|
||||
char* combined = malloc(sizeof(char) * (strlen(vdede->ent->d_name) + strlen(dir) + 2));
|
||||
sprintf(combined, "%s%s%s", dir, PATH_SEP, vdede->ent->d_name);
|
||||
|
@ -165,9 +166,8 @@ static enum VFSType _vdeType(struct VDirEntry* vde) {
|
|||
return VFS_DIRECTORY;
|
||||
}
|
||||
return VFS_FILE;
|
||||
#endif
|
||||
}
|
||||
|
||||
bool VDirCreate(const char* path) {
|
||||
return mkdir(path, 0777) == 0 || errno == EEXIST;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue