From 1b1b4e658dedf2d352a7b495b69267c6cf5a3439 Mon Sep 17 00:00:00 2001 From: qndel Date: Sat, 31 Aug 2019 01:01:13 +0200 Subject: [PATCH] init_read_test_file clean up --- Source/init.cpp | 14 ++++++++++---- Source/pfile.cpp | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Source/init.cpp b/Source/init.cpp index c22c8a7ca..221ee9743 100644 --- a/Source/init.cpp +++ b/Source/init.cpp @@ -336,20 +336,26 @@ BOOL init_read_test_file(char *pszPath, char *pszArchive, int flags, HANDLE *phA } pszDrive = szDrive; - while (*pszDrive != '\0') { + if (*pszDrive == '\0') { + return FALSE; + } + while (1) { pszRoot = pszDrive; while (*pszDrive++ != '\0') ; if (GetDriveType(pszRoot) == DRIVE_CDROM) { strcpy(pszPath, pszRoot); strcat(pszPath, pszArchive); - if (SFileOpenArchive(pszPath, flags, 1, phArchive)) { - return TRUE; + if (SFileOpenArchive(pszPath, flags, FS_CD, phArchive)) { + break; } } + if (*pszDrive == '\0') { + return FALSE; + } } - return FALSE; + return TRUE; } void init_get_file_info() diff --git a/Source/pfile.cpp b/Source/pfile.cpp index 31e18d2d2..e3f964c0c 100644 --- a/Source/pfile.cpp +++ b/Source/pfile.cpp @@ -387,7 +387,7 @@ HANDLE pfile_open_save_archive(BOOL *showFixedMsg, DWORD save_num) HANDLE archive; pfile_get_save_path(SrcStr, sizeof(SrcStr), save_num); - if (SFileOpenArchive(SrcStr, 0x7000, 0, &archive)) + if (SFileOpenArchive(SrcStr, 0x7000, FS_PC, &archive)) return archive; return NULL; }