From 5a28266abf2a60e3e60b0a56df62c0167ca29ece Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 31 Aug 2015 10:58:15 +0200 Subject: [PATCH] Cleanups --- libretro-common/file/dir_list.c | 90 ++++++++++----------------------- 1 file changed, 27 insertions(+), 63 deletions(-) diff --git a/libretro-common/file/dir_list.c b/libretro-common/file/dir_list.c index b0f82b908f..f3995a1c1c 100644 --- a/libretro-common/file/dir_list.c +++ b/libretro-common/file/dir_list.c @@ -227,8 +227,8 @@ struct string_list *dir_list_new(const char *dir, SceUID directory; SceIoDirent entry; #else - DIR *directory = NULL; - const struct dirent *entry = NULL; + DIR *directory = NULL; + const struct dirent *entry = NULL; #endif struct string_list *ext_list = NULL; struct string_list *list = NULL; @@ -247,86 +247,36 @@ struct string_list *dir_list_new(const char *dir, goto error; while (FindNextFile(hFind, &entry) != 0) - { - char file_path[PATH_MAX_LENGTH]; - int ret = 0; - const char *name = entry.cFileName; - const char *file_ext = path_get_extension(name); - bool is_dir = false; - - fill_pathname_join(file_path, dir, name, sizeof(file_path)); - - is_dir = dirent_is_directory(file_path, &entry); - - ret = parse_dir_entry(name, file_path, is_dir, - include_dirs, include_compressed, list, ext_list, file_ext); - - if (ret == -1) - goto error; - - if (ret == 1) - continue; - } - - FindClose(hFind); - string_list_free(ext_list); - return list; - -error: - if (hFind != INVALID_HANDLE_VALUE) - FindClose(hFind); #elif defined(VITA) directory = sceIoDopen(dir); if (directory < 0) goto error; while (sceIoDread(directory, &entry) > 0) - { - char file_path[PATH_MAX_LENGTH]; - int ret = 0; - const char *name = entry.d_name; - const char *file_ext = path_get_extension(name); - bool is_dir = false; - - fill_pathname_join(file_path, dir, name, sizeof(file_path)); - - is_dir = dirent_is_directory(file_path, entry); - - ret = parse_dir_entry(name, file_path, is_dir, - include_dirs, include_compressed, list, ext_list, file_ext); - - if (ret == -1) - goto error; - - if (ret == 1) - continue; - } - - sceIoDclose(directory); - - string_list_free(ext_list); - return list; - -error: - sceIoDclose(directory); - #else directory = opendir(dir); if (!directory) goto error; while ((entry = readdir(directory))) +#endif { char file_path[PATH_MAX_LENGTH]; int ret = 0; +#ifdef _WIN32 + const char *name = entry.cFileName; + bool is_dir = dirent_is_directory(file_path, &entry); +#elif defined(VITA) + const char *name = entry.d_name; + bool is_dir = dirent_is_directory(file_path, entry); +#else const char *name = entry->d_name; + bool is_dir = dirent_is_directory(file_path, entry); +#endif const char *file_ext = path_get_extension(name); - bool is_dir = false; fill_pathname_join(file_path, dir, name, sizeof(file_path)); - is_dir = dirent_is_directory(file_path, entry); - ret = parse_dir_entry(name, file_path, is_dir, include_dirs, include_compressed, list, ext_list, file_ext); @@ -337,15 +287,29 @@ error: continue; } - closedir(directory); +#ifdef _WIN32 + FindClose(hFind); +#elif defined(VITA) + sceIoDclose(directory); +#else + if (directory) + closedir(directory); +#endif string_list_free(ext_list); return list; error: +#if defined(_WIN32) + if (hFind != INVALID_HANDLE_VALUE) + FindClose(hFind); +#elif defined(VITA) + sceIoDclose(directory); +#else if (directory) closedir(directory); #endif + string_list_free(list); string_list_free(ext_list); return NULL;