diff options
| author | Paul Sokolovsky | 2016-02-29 00:44:12 +0200 |
|---|---|---|
| committer | Paul Sokolovsky | 2016-02-29 00:44:32 +0200 |
| commit | 6ef65e70af23508be303e46953b323409a2893ab (patch) | |
| tree | e0f43f1376ff25a5f678d4f7c6a4aa9b6c19b2f1 /extmod/vfs_fat_misc.c | |
| parent | eaa96a76101a1b15de3f96b0ede3d62fc5def6f5 (diff) | |
extmod/vfs_fat: Add fat_vfs_import_stat(), reusable import stat routine.
Moved from stmhal.
Diffstat (limited to 'extmod/vfs_fat_misc.c')
| -rw-r--r-- | extmod/vfs_fat_misc.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/extmod/vfs_fat_misc.c b/extmod/vfs_fat_misc.c index f9f49b0d3..bf9ce05cd 100644 --- a/extmod/vfs_fat_misc.c +++ b/extmod/vfs_fat_misc.c @@ -34,6 +34,7 @@ #include "lib/fatfs/diskio.h" #include "extmod/vfs_fat_file.h" #include "fsusermount.h" +#include "py/lexer.h" #if _USE_LFN STATIC char lfn[_MAX_LFN + 1]; /* Buffer to store the LFN */ @@ -94,4 +95,21 @@ mp_obj_t fat_vfs_listdir(const char *path, bool is_str_type) { return dir_list; } +mp_import_stat_t fat_vfs_import_stat(const char *path) { + FILINFO fno; +#if _USE_LFN + fno.lfname = NULL; + fno.lfsize = 0; +#endif + FRESULT res = f_stat(path, &fno); + if (res == FR_OK) { + if ((fno.fattrib & AM_DIR) != 0) { + return MP_IMPORT_STAT_DIR; + } else { + return MP_IMPORT_STAT_FILE; + } + } + return MP_IMPORT_STAT_NO_EXIST; +} + #endif // MICROPY_VFS_FAT |
