diff options
author | Campbell Barton <campbell@blender.org> | 2022-09-10 07:09:42 +0300 |
---|---|---|
committer | Campbell Barton <campbell@blender.org> | 2022-09-10 07:13:07 +0300 |
commit | ef3c49de8186278d57d0319ab4bf4fe923b7016d (patch) | |
tree | 0ab65b060c37704e067c4a2eb7bf4489e9d8792d /source/blender/blenkernel/intern/studiolight.c | |
parent | 099ae99589bf21e03bbf380613438114953dd8ea (diff) |
Cleanup: early return when directories can't be found
Also reduce variable scope and assert when an invalid argument
is passed to BKE_appdir_folder_id_create.
Diffstat (limited to 'source/blender/blenkernel/intern/studiolight.c')
-rw-r--r-- | source/blender/blenkernel/intern/studiolight.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/source/blender/blenkernel/intern/studiolight.c b/source/blender/blenkernel/intern/studiolight.c index f17450ac3f4..64f998ea67f 100644 --- a/source/blender/blenkernel/intern/studiolight.c +++ b/source/blender/blenkernel/intern/studiolight.c @@ -1166,19 +1166,21 @@ static void studiolight_add_files_from_datafolder(const int folder_id, const char *subfolder, int flag) { - struct direntry *dirs; const char *folder = BKE_appdir_folder_id(folder_id, subfolder); - if (folder) { - const uint dirs_num = BLI_filelist_dir_contents(folder, &dirs); - int i; - for (i = 0; i < dirs_num; i++) { - if (dirs[i].type & S_IFREG) { - studiolight_add_file(dirs[i].path, flag); - } + if (!folder) { + return; + } + + struct direntry *dirs; + const uint dirs_num = BLI_filelist_dir_contents(folder, &dirs); + int i; + for (i = 0; i < dirs_num; i++) { + if (dirs[i].type & S_IFREG) { + studiolight_add_file(dirs[i].path, flag); } - BLI_filelist_free(dirs, dirs_num); - dirs = NULL; } + BLI_filelist_free(dirs, dirs_num); + dirs = NULL; } static int studiolight_flag_cmp_order(const StudioLight *sl) |