From 0395cd19d4614dd71481bb7e308530fb37e4b85e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mario=20H=C3=BCttel?= Date: Fri, 21 Aug 2020 00:06:56 +0200 Subject: [PATCH] SD card settings folder: Use f_stat to determine if directory is present --- stm-firmware/settings/settings-sd-card.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/stm-firmware/settings/settings-sd-card.c b/stm-firmware/settings/settings-sd-card.c index 4e98b9c..1934767 100644 --- a/stm-firmware/settings/settings-sd-card.c +++ b/stm-firmware/settings/settings-sd-card.c @@ -59,19 +59,17 @@ static int create_controller_folder(void) char foldername[48]; int ret = -1; FRESULT filesystem_result; - DIR folder; + FILINFO fno; get_controller_folder_path(foldername, sizeof(foldername)); /* Check if folder is present */ - filesystem_result = f_opendir(&folder, foldername); - if (filesystem_result == FR_OK) { + filesystem_result = f_stat(foldername, &fno); + if (filesystem_result == FR_OK && fno.fattrib & AM_DIR) { ret = 0; - f_closedir(&folder); } else { filesystem_result = f_mkdir(foldername); if (filesystem_result == FR_OK) { - f_closedir(&folder); ret = 1; } else { ret = -1;