Merge branch 'contribute/github_pr_17789_v5.2' into 'release/v5.2'

fix(storage/spiffs): fix readdir setting errno on directory end (v5.2)

See merge request espressif/esp-idf!45384
This commit is contained in:
Martin Vychodil
2026-01-23 04:38:53 +08:00
+9 -1
View File
@@ -727,7 +727,15 @@ static int vfs_spiffs_readdir_r(void* ctx, DIR* pdir, struct dirent* entry,
char * item_name;
do {
if (SPIFFS_readdir(&dir->d, &out) == 0) {
errno = spiffs_res_to_errno(SPIFFS_errno(efs->fs));
s32_t spiffs_res = SPIFFS_errno(efs->fs);
switch (spiffs_res) {
case SPIFFS_ERR_END_OF_OBJECT:
errno = 0;
break;
default:
errno = spiffs_res_to_errno(spiffs_res);
break;
}
SPIFFS_clearerr(efs->fs);
if (!errno) {
*out_dirent = NULL;