This is SDFileSystem which corrected the bug for MiMicSDK.
Dependents: MbedFileServer_1768MiniDK2 RedWireBridge IssueDebug_gcc MiMicRemoteMCU-for-Mbed ... more
Fork of SDFileSystem by
Diff: FATFileSystem/FATFileSystem.cpp
- Revision:
- 6:972a52e4d92c
- Parent:
- 5:2c7b6bd5b079
- Child:
- 7:5429e81addde
--- a/FATFileSystem/FATFileSystem.cpp Thu Apr 25 02:14:56 2013 +0000 +++ b/FATFileSystem/FATFileSystem.cpp Fri Apr 26 09:07:37 2013 +0000 @@ -67,8 +67,8 @@ FileHandle *FATFileSystem::open(const char* name, int flags) { debug_if(FFS_DBG, "open(%s) on filesystem [%s], drv [%d]\n", name, _name, _fsid); - char n[64]; - sprintf(n, "%d:/%s", _fsid, name); +// char n[64]; +// sprintf(n, "%d:/%s", _fsid, name); /* POSIX flags -> FatFS open mode */ BYTE openmode; @@ -87,7 +87,7 @@ } } FIL fh; - FRESULT res = f_open(&fh, n, openmode); + FRESULT res = f_open(&fh,this->_fsid,name, openmode); if (res) { debug_if(FFS_DBG, "f_open('w') failed: %d\n", res); return NULL; @@ -99,7 +99,7 @@ } int FATFileSystem::remove(const char *filename) { - FRESULT res = f_unlink(filename); + FRESULT res = f_unlink(this->_fsid,filename); if (res) { debug_if(FFS_DBG, "f_unlink() failed: %d\n", res); return -1; @@ -115,10 +115,9 @@ } return 0; } - DirHandle *FATFileSystem::opendir(const char *name) { - FATFS_DIR dir; - FRESULT res = f_opendir(&dir, name); + FATFS_DIR dir; + FRESULT res = f_opendir(&dir,this->_fsid,name); if (res != 0) { return NULL; } @@ -126,6 +125,6 @@ } int FATFileSystem::mkdir(const char *name, mode_t mode) { - FRESULT res = f_mkdir(name); + FRESULT res = f_mkdir(this->_fsid,name); return res == 0 ? 0 : -1; }