mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-15 11:03:00 +01:00
Merge pull request #1953 from janisozaur/file-not-found
Safely handle 'file not found' or wrong parameters
This commit is contained in:
@@ -297,7 +297,7 @@ bool platform_enumerate_files_next(int handle, file_info *outFileInfo)
|
|||||||
enumFileInfo = &_enumerateFileInfoList[handle];
|
enumFileInfo = &_enumerateFileInfoList[handle];
|
||||||
|
|
||||||
log_verbose("handle = %d", handle);
|
log_verbose("handle = %d", handle);
|
||||||
if (enumFileInfo->handle < enumFileInfo->cnt) {
|
if ((handle >= 0) && (enumFileInfo->handle < enumFileInfo->cnt)) {
|
||||||
result = true;
|
result = true;
|
||||||
} else {
|
} else {
|
||||||
result = false;
|
result = false;
|
||||||
@@ -328,6 +328,10 @@ void platform_enumerate_files_end(int handle)
|
|||||||
int i;
|
int i;
|
||||||
enumerate_file_info *enumFileInfo;
|
enumerate_file_info *enumFileInfo;
|
||||||
|
|
||||||
|
if (handle < 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
enumFileInfo = &_enumerateFileInfoList[handle];
|
enumFileInfo = &_enumerateFileInfoList[handle];
|
||||||
int cnt = enumFileInfo->cnt;
|
int cnt = enumFileInfo->cnt;
|
||||||
for (i = 0; i < cnt; i++) {
|
for (i = 0; i < cnt; i++) {
|
||||||
@@ -425,7 +429,7 @@ bool platform_enumerate_directories_next(int handle, utf8 *path)
|
|||||||
enumFileInfo = &_enumerateFileInfoList[handle];
|
enumFileInfo = &_enumerateFileInfoList[handle];
|
||||||
|
|
||||||
log_verbose("handle = %d", handle);
|
log_verbose("handle = %d", handle);
|
||||||
if (enumFileInfo->handle < enumFileInfo->cnt) {
|
if ((handle >= 0) && (enumFileInfo->handle < enumFileInfo->cnt)) {
|
||||||
result = true;
|
result = true;
|
||||||
} else {
|
} else {
|
||||||
result = false;
|
result = false;
|
||||||
@@ -457,6 +461,10 @@ void platform_enumerate_directories_end(int handle)
|
|||||||
int i;
|
int i;
|
||||||
enumerate_file_info *enumFileInfo;
|
enumerate_file_info *enumFileInfo;
|
||||||
|
|
||||||
|
if (handle < 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
enumFileInfo = &_enumerateFileInfoList[handle];
|
enumFileInfo = &_enumerateFileInfoList[handle];
|
||||||
int cnt = enumFileInfo->cnt;
|
int cnt = enumFileInfo->cnt;
|
||||||
for (i = 0; i < cnt; i++) {
|
for (i = 0; i < cnt; i++) {
|
||||||
|
|||||||
Reference in New Issue
Block a user