Commit c0a25a69 authored by Damien George's avatar Damien George

extmod/modos: Only sync FAT filesystems using disk_ioctl.

Eventually this needs to be made a generic call to the underlying VFS.  But
for now this prevents `disk_ioctl()` crashing on non-FAT filesystems.
Signed-off-by: default avatarDamien George <damien@micropython.org>
parent fbf81147
......@@ -76,8 +76,9 @@
static mp_obj_t mp_os_sync(void) {
#if MICROPY_VFS_FAT
for (mp_vfs_mount_t *vfs = MP_STATE_VM(vfs_mount_table); vfs != NULL; vfs = vfs->next) {
// this assumes that vfs->obj is fs_user_mount_t with block device functions
disk_ioctl(MP_OBJ_TO_PTR(vfs->obj), CTRL_SYNC, NULL);
if (mp_obj_is_type(vfs->obj, &mp_fat_vfs_type)) {
disk_ioctl(MP_OBJ_TO_PTR(vfs->obj), CTRL_SYNC, NULL);
}
}
#endif
return mp_const_none;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment