diff --git a/components/fs/fatfs/wrapper/tos_fatfs_vfs.c b/components/fs/fatfs/wrapper/tos_fatfs_vfs.c index eaa59950..d021e921 100644 --- a/components/fs/fatfs/wrapper/tos_fatfs_vfs.c +++ b/components/fs/fatfs/wrapper/tos_fatfs_vfs.c @@ -220,7 +220,7 @@ static int fatfs_readdir(vfs_dir_t *dir, vfs_dirent_t *dirent) dp = (DIR *)dir->private; res = tos_f_readdir(dp, &info); - if (res != FR_OK) { + if (res != FR_OK || info.fname[0] == 0) { return -1; } diff --git a/components/fs/vfs/tos_vfs.c b/components/fs/vfs/tos_vfs.c index 01352c25..b3e070df 100644 --- a/components/fs/vfs/tos_vfs.c +++ b/components/fs/vfs/tos_vfs.c @@ -430,7 +430,7 @@ __API__ vfs_dirent_t *tos_vfs_readdir(VFS_DIR *dirp) vfs_dir_t *dir = K_NULL; vfs_inode_t *inode = K_NULL; - if (!dir) { + if (!dirp) { return K_NULL; }