...
Anchor
FSDev_Refresh()
refreshes a device:...
rowspan | 3 |
---|
...
:
...
...
Anchor
...
A device can be refreshed explicitly with FSDev_Refresh()
; however, refresh also happens automatically. If a volume access (e.g., FSVol_Fmt()
, FSVol_Rd()
), entry access (FSEntry_Create()
, fs_remove()
), file open (fs_fopen()
or FSFile_Open()
) or directory open (fs_opendir()
or FSDir_Open()
) is initiated on a device that was not present at the last attempted access, µC/FS attempts to refresh the device information; if that succeeds, it attempts to refresh the volume information.
Anchor
FSFile_Rd()
) will fail with the error code FS_ERR_DEV_CHNGD
; all POSIX API functions will return error values. The file should then be closed (to free the file structure).Similarly, if a directory is opened on a volume, and the underlying device is subsequently removed or changed, all further FSDir_Rd()
attempts will fail with the error code FS_ERR_DEV_CHNGD
; fs_readdir_r()
will return 1. The directory should then be closed (to free the directory structure).