xref: /third_party/FatFs/documents/updates.html (revision e6865dcd)
1e6865dcdSopenharmony_ci<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2e6865dcdSopenharmony_ci<html lang="en">
3e6865dcdSopenharmony_ci<head>
4e6865dcdSopenharmony_ci<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5e6865dcdSopenharmony_ci<meta http-equiv="Content-Style-Type" content="text/css">
6e6865dcdSopenharmony_ci<meta http-equiv="cache-control" content="no-cache">
7e6865dcdSopenharmony_ci<link rel="start" title="Site Top" href="../../">
8e6865dcdSopenharmony_ci<link rel="stylesheet" href="css_e.css" type="text/css" media="screen" title="ELM Default">
9e6865dcdSopenharmony_ci<title>FatFs - Known Problems</title>
10e6865dcdSopenharmony_ci</head>
11e6865dcdSopenharmony_ci<body style="max-width: none;">
12e6865dcdSopenharmony_ci<h2>Updates and Migration Notes</h2>
13e6865dcdSopenharmony_ci<table class="lst4">
14e6865dcdSopenharmony_ci<tr><th>Revision</th><th>Updates</th><th>Migration Notes</th></tr>
15e6865dcdSopenharmony_ci<tr>
16e6865dcdSopenharmony_ci<td>R0.15<br>Nov 6, 2022</td>
17e6865dcdSopenharmony_ci<td>
18e6865dcdSopenharmony_ciChanged user provided synchronization functions in order to completely eliminate the platform dependency from FatFs code.<br>
19e6865dcdSopenharmony_ciFixed a potential error in <tt>f_mount</tt> when <tt>FF_FS_REENTRANT</tt>.<br>
20e6865dcdSopenharmony_ciFixed file lock control <tt>FF_FS_LOCK</tt> is not mutal excluded when <tt>FF_FS_REENTRANT && FF_VOLUMES &gt; 1</tt> is true.<br>
21e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> creates broken exFAT volume when the size of volume is <tt>&gt;= 2^32</tt> sectors.<br>
22e6865dcdSopenharmony_ciFixed string functions cannot write the unicode characters not in BMP when <tt>FF_LFN_UNICODE == 2</tt> (UTF-8).<br>
23e6865dcdSopenharmony_ciFixed a compatibility issue in identification of GPT header.<br>
24e6865dcdSopenharmony_ci</td>
25e6865dcdSopenharmony_ci<td>
26e6865dcdSopenharmony_ciUser provided synchronization functions, <tt>ff_cre_syncobj</tt>, <tt>ff_del_syncobj</tt>, <tt>ff_req_grant</tt> and <tt>ff_rel_grant</tt>, needed when <tt>FF_FS_REENTRANT</tt> are replaced by <tt>ff_mutex_create</tt>, <tt>ff_mutex_delete</tt>, <tt>ff_mutex_take</tt> and <tt>ff_mutex_give</tt> respectively. For examples, see <tt>ffsystem.c</tt>.<br>
27e6865dcdSopenharmony_ci<tt>FF_SYNC_t</tt> is removed from the configuration options.<br>
28e6865dcdSopenharmony_ci</td>
29e6865dcdSopenharmony_ci</tr>
30e6865dcdSopenharmony_ci<tr>
31e6865dcdSopenharmony_ci<td>R0.14b<br>Apr 17, 2021</td>
32e6865dcdSopenharmony_ci<td>
33e6865dcdSopenharmony_ciMade FatFs uses standard library <tt>string.h</tt> for copy, compare and search instead of built-in string functions.<br>
34e6865dcdSopenharmony_ciAdded support for long long integer and floating point to <tt>f_printf</tt>. (<tt>FF_STRF_LLI</tt> and <tt>FF_STRF_FP</tt>)<br>
35e6865dcdSopenharmony_ciMade path name parser ignores the terminating separator to allow <tt>"dir/"</tt>.<br>
36e6865dcdSopenharmony_ciImproved the compatibility in Unix style path name feature.<br>
37e6865dcdSopenharmony_ciFixed the file gets dead-locked when <tt>f_open</tt> failed with certain conditions. (appeared at R0.12a)<br>
38e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> can create wrong exFAT volume due to a timing dependent error. (appeared at R0.12)<br>
39e6865dcdSopenharmony_ciFixed code page 855 cannot be set by <tt>f_setcp</tt>. (appeared at R0.13)<br>
40e6865dcdSopenharmony_ciFixed some compiler warnings.<br>
41e6865dcdSopenharmony_ci</td>
42e6865dcdSopenharmony_ci<td>
43e6865dcdSopenharmony_ciFrom this revision, FatFs depends on <tt>string.h</tt>.<br>
44e6865dcdSopenharmony_ci</td>
45e6865dcdSopenharmony_ci</tr>
46e6865dcdSopenharmony_ci<tr>
47e6865dcdSopenharmony_ci<td>R0.14a<br>Dec 05, 2020</td>
48e6865dcdSopenharmony_ci<td>
49e6865dcdSopenharmony_ciLimited number of recursive calls in <tt>f_findnext</tt> to prevent stack overflow.<br>
50e6865dcdSopenharmony_ciFixed old floppy disks formatted with MS-DOS 2.x and 3.x cannot be mounted.<br>
51e6865dcdSopenharmony_ciFixed some compiler warnings.<br>
52e6865dcdSopenharmony_ci</td>
53e6865dcdSopenharmony_ci<td>
54e6865dcdSopenharmony_ciNumber of wildcards in the matching pattern in <tt>f_findfirst</tt> is limited to 4.<br>
55e6865dcdSopenharmony_ci</td>
56e6865dcdSopenharmony_ci</tr>
57e6865dcdSopenharmony_ci<tr>
58e6865dcdSopenharmony_ci<td>R0.14<br>Oct 14, 2019</td>
59e6865dcdSopenharmony_ci<td>
60e6865dcdSopenharmony_ciAdded support for 64-bit LBA and GUID partition table (<tt>FF_LBA64</tt>)<br>
61e6865dcdSopenharmony_ciChanged some API functions, <tt>f_mkfs</tt> and <tt>f_fdisk</tt>.<br>
62e6865dcdSopenharmony_ciFixed <tt>f_open</tt> cannot find the file with file name in length of <tt>FF_MAX_LFN</tt> characters.<br>
63e6865dcdSopenharmony_ciFixed <tt>f_readdir</tt> cannot retrieve long file names in length of <tt>FF_MAX_LFN - 1</tt> characters.<br>
64e6865dcdSopenharmony_ciFixed <tt>f_readdir</tt> returns file names with wrong case conversion. (appeared at R0.12)<br>
65e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> can fail to create exFAT volume in the second partition. (appeared at R0.12)<br>
66e6865dcdSopenharmony_ci</td>
67e6865dcdSopenharmony_ci<td>
68e6865dcdSopenharmony_ciUsage of <tt>f_mkfs</tt> and <tt>f_fdisk</tt> is changed and some features are added to these functions.<br>
69e6865dcdSopenharmony_ci</td>
70e6865dcdSopenharmony_ci</tr>
71e6865dcdSopenharmony_ci<tr>
72e6865dcdSopenharmony_ci<td>R0.13c<br>Oct 14, 2018</td>
73e6865dcdSopenharmony_ci<td>
74e6865dcdSopenharmony_ciSupported <tt>stdint.h</tt> for C99 and later. (<tt>integer.h</tt> was included in <tt>ff.h</tt>)<br>
75e6865dcdSopenharmony_ciFixed reading a directory gets infinite loop when the last directory entry is not empty. (appeared at R0.12)<br>
76e6865dcdSopenharmony_ciFixed creating a sub-directory in the fragmented sub-directory on the exFAT volume collapses FAT chain of the parent directory. (appeared at R0.12)<br>
77e6865dcdSopenharmony_ciFixed <tt>f_getcwd</tt> cause output buffer overrun when the buffer has a valid drive number. (appeared at R0.13b)<br>
78e6865dcdSopenharmony_ci</td>
79e6865dcdSopenharmony_ci<td>
80e6865dcdSopenharmony_ciFrom this revision, FatFs depends on <tt>stdint.h</tt> in C99 or later.<br>
81e6865dcdSopenharmony_ci<tt>integer.h</tt> is removed.<br>
82e6865dcdSopenharmony_ci</td>
83e6865dcdSopenharmony_ci</tr>
84e6865dcdSopenharmony_ci<tr>
85e6865dcdSopenharmony_ci<td>R0.13b<br>Apr 07, 2018</td>
86e6865dcdSopenharmony_ci<td>
87e6865dcdSopenharmony_ciAdded support for UTF-32 encoding on the API. (<tt>FF_LFN_UNICODE = 3</tt>)<br>
88e6865dcdSopenharmony_ciAdded support for Unix style volume prefix. (<tt>FF_STR_VOLUME_ID = 2</tt>)<br>
89e6865dcdSopenharmony_ciFixed accesing objects in the exFAT root directory beyond the cluster boundary can fail. (appeared at R0.12c)<br>
90e6865dcdSopenharmony_ciFixed <tt>f_setlabel</tt> does not reject some invalid characters. (appeared at R0.09b)<br>
91e6865dcdSopenharmony_ci</td>
92e6865dcdSopenharmony_ci<td>
93e6865dcdSopenharmony_ci</td>
94e6865dcdSopenharmony_ci</tr>
95e6865dcdSopenharmony_ci<tr>
96e6865dcdSopenharmony_ci<td>R0.13a<br>Oct 14, 2017</td>
97e6865dcdSopenharmony_ci<td>
98e6865dcdSopenharmony_ciAdded support for UTF-8 encoding on the API. (<tt>FF_LFN_UNICODE = 2</tt>)<br>
99e6865dcdSopenharmony_ciAdded options for file name output buffer. (<tt>FF_LFN_BUF, FF_SFN_BUF</tt>)<br>
100e6865dcdSopenharmony_ciAdded dynamic memory allocation option for working buffer of <tt>f_mkfs</tt> and <tt>f_fdisk</tt>.<br>
101e6865dcdSopenharmony_ciFixed <tt>f_fdisk</tt> and <tt>f_mkfs</tt> create the partition table with wrong CHS parameters. (appeared at R0.09)<br>
102e6865dcdSopenharmony_ciFixed <tt>f_unlink</tt> can cause lost clusters at fragmented file on the exFAT volume. (appeared at R0.12c)<br>
103e6865dcdSopenharmony_ciFixed <tt>f_setlabel</tt> rejects some valid characters for exFAT volume. (appeared at R0.12)<br>
104e6865dcdSopenharmony_ci</td>
105e6865dcdSopenharmony_ci<td>
106e6865dcdSopenharmony_ci</td>
107e6865dcdSopenharmony_ci</tr>
108e6865dcdSopenharmony_ci<tr>
109e6865dcdSopenharmony_ci<td>R0.13<br>May 21, 2017</td>
110e6865dcdSopenharmony_ci<td>
111e6865dcdSopenharmony_ciPrefix of configuration item names are changed from <tt>"_"</tt> to <tt>"FF_"</tt>.<br>
112e6865dcdSopenharmony_ciAdded <tt>f_setcp</tt>, run-time code page configuration. (<tt>FF_CODE_PAGE = 0</tt>)<br>
113e6865dcdSopenharmony_ciImproved cluster allocation time on stretch a deep buried cluster chain.<br>
114e6865dcdSopenharmony_ciImproved processing time of <tt>f_mkdir</tt> with large cluster size by using <tt>FF_USE_LFN = 3</tt>.<br>
115e6865dcdSopenharmony_ciImproved exFAT <tt>NoFatChain</tt> flag of the fragmented file to be set after it is truncated and got contiguous.<br>
116e6865dcdSopenharmony_ciFixed archive attribute is left not set when a file on the exFAT volume is renamed. (appeared at R0.12)<br>
117e6865dcdSopenharmony_ciFixed exFAT FAT entry can be collapsed when write or lseek operation to the existing file is done. (appeared at R0.12c)<br>
118e6865dcdSopenharmony_ciFixed creating a file can fail when a new cluster allocation to the exFAT directory occures. (appeared at R0.12c)<br>
119e6865dcdSopenharmony_ci</td>
120e6865dcdSopenharmony_ci<td>
121e6865dcdSopenharmony_ciASCII only configuration, <tt>FF_CODE_PAGE = 1</tt>, is removed. Use <tt>FF_CODE_PAGE = 437</tt> instead.<br>
122e6865dcdSopenharmony_ci</td>
123e6865dcdSopenharmony_ci</tr>
124e6865dcdSopenharmony_ci<tr>
125e6865dcdSopenharmony_ci<td>R0.12c<br>Mar 04, 2017</td>
126e6865dcdSopenharmony_ci<td>
127e6865dcdSopenharmony_ciImproved write throughput at the fragmented file on the exFAT volume.<br>
128e6865dcdSopenharmony_ciMade memory usage for exFAT be able to be reduced as decreasing <tt>_MAX_LFN</tt>.<br>
129e6865dcdSopenharmony_ciFixed successive <tt>f_getfree</tt> can return wrong count on the FAT12/16 volume. (appeared at R0.12)<br>
130e6865dcdSopenharmony_ciFixed configuration option <tt>_VOLUMES</tt> cannot be set 10. (appeared at R0.10c)<br>
131e6865dcdSopenharmony_ci</td>
132e6865dcdSopenharmony_ci<td>
133e6865dcdSopenharmony_ci</td>
134e6865dcdSopenharmony_ci</tr>
135e6865dcdSopenharmony_ci<tr>
136e6865dcdSopenharmony_ci<td>R0.12b<br>Sep 4, 2016</td>
137e6865dcdSopenharmony_ci<td>
138e6865dcdSopenharmony_ciMade <tt>f_rename</tt> be able to rename objects with the same name but case.<br>
139e6865dcdSopenharmony_ciFixed an error in the case conversion teble of code page 866. (<tt>ff.c</tt>)<br>
140e6865dcdSopenharmony_ciFixed writing data is truncated at the file offset 4GiB on the exFAT volume. (appeared at R0.12)<br>
141e6865dcdSopenharmony_ciFixed creating a file in the root directory of exFAT volume can fail. (appeared at R0.12)<br>
142e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> creating exFAT volume with too small cluster size can collapse unallocated memory. (appeared at R0.12a)<br>
143e6865dcdSopenharmony_ciFixed wrong object name can be returned when read directory at Unicode cfg. (appeared at R0.12)<br>
144e6865dcdSopenharmony_ciFixed large file allocation/removing on the exFAT volume collapses allocation bitmap. (appeared at R0.12)<br>
145e6865dcdSopenharmony_ciFixed some internal errors in <tt>f_expand</tt> and <tt>f_lseek.</tt> (appeared at R0.12)<br>
146e6865dcdSopenharmony_ci</td>
147e6865dcdSopenharmony_ci<td>
148e6865dcdSopenharmony_ci</td>
149e6865dcdSopenharmony_ci</tr>
150e6865dcdSopenharmony_ci<tr>
151e6865dcdSopenharmony_ci<td>R0.12a<br>Jul 10, 2016</td>
152e6865dcdSopenharmony_ci<td>
153e6865dcdSopenharmony_ciAdded support for creating exFAT volume with some changes of <tt>f_mkfs</tt>.<br>
154e6865dcdSopenharmony_ciAdded a file open method <tt>FA_OPEN_APPEND</tt>.<br>
155e6865dcdSopenharmony_ci<tt>f_forward</tt> is available regardless of <tt>_FS_TINY</tt>.<br>
156e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> creates broken volume. (appeared at R0.12)<br>
157e6865dcdSopenharmony_ciFixed wrong memory read in <tt>create_name</tt>. (appeared at R0.12)<br>
158e6865dcdSopenharmony_ciFixed compilation fails at some configurations, <tt>_USE_FASTSEEK</tt> and <tt>_USE_FORWARD</tt>.<br>
159e6865dcdSopenharmony_ci</td>
160e6865dcdSopenharmony_ci<td>
161e6865dcdSopenharmony_ciUsage of <tt>f_mkfs</tt> is changed.<br>
162e6865dcdSopenharmony_ci</td>
163e6865dcdSopenharmony_ci</tr>
164e6865dcdSopenharmony_ci<tr>
165e6865dcdSopenharmony_ci<td>R0.12<br>Apr 12, 2016</td>
166e6865dcdSopenharmony_ci<td>
167e6865dcdSopenharmony_ciAdded support for exFAT file system. (<tt>_FS_EXFAT</tt>)<br>
168e6865dcdSopenharmony_ciAdded <tt>f_expand</tt>. (<tt>_USE_EXPAND</tt>)<br>
169e6865dcdSopenharmony_ciChanged some members in <tt>FINFO</tt> and behavior of <tt>f_readdir</tt>.<br>
170e6865dcdSopenharmony_ciAdded a configuration option <tt>_USE_CHMOD</tt>.<br>
171e6865dcdSopenharmony_ciFixed errors in the case conversion teble of Unicode (<tt>cc*.c</tt>).<br>
172e6865dcdSopenharmony_ci</td>
173e6865dcdSopenharmony_ci<td>
174e6865dcdSopenharmony_ciUsage and members of <tt>FINFO</tt> sructure used in <tt>f_readdir</tt> is changed.<br>
175e6865dcdSopenharmony_ciMany members in <tt>FIL</tt> and <tt>DIR</tt> structure are changed.<br>
176e6865dcdSopenharmony_ciTo use <tt>f_chmod</tt>, <tt>_USE_CHMOD</tt> needs to be set.<br>
177e6865dcdSopenharmony_ci<tt>_WORD_ACCESS</tt> is removed from the configuration options.<br>
178e6865dcdSopenharmony_ciDot entries are never appear in <tt>f_reeddir</tt>.<br>
179e6865dcdSopenharmony_ci</td>
180e6865dcdSopenharmony_ci</tr>
181e6865dcdSopenharmony_ci<tr>
182e6865dcdSopenharmony_ci<td>R0.11a<br>Sep 5, 2015</td>
183e6865dcdSopenharmony_ci<td>
184e6865dcdSopenharmony_ciFixed wrong media change can lead a deadlock at thread-safe configuration.<br>
185e6865dcdSopenharmony_ciAdded code page 771, 860, 861, 863, 864, 865 and 869. (<tt>_CODE_PAGE</tt>)<br>
186e6865dcdSopenharmony_ciFixed errors in the case conversion teble of code page 437 and 850 (<tt>ff.c</tt>).<br>
187e6865dcdSopenharmony_ciFixed errors in the case conversion teble of Unicode (<tt>cc*.c</tt>).<br>
188e6865dcdSopenharmony_ci</td>
189e6865dcdSopenharmony_ci<td>
190e6865dcdSopenharmony_ciRemoved some code pages actually not exist on the standard systems. (<tt>_CODE_PAGE</tt>)<br>
191e6865dcdSopenharmony_ci</td>
192e6865dcdSopenharmony_ci</tr>
193e6865dcdSopenharmony_ci<tr>
194e6865dcdSopenharmony_ci<td>R0.11<br>Feb 9, 2015</td>
195e6865dcdSopenharmony_ci<td>
196e6865dcdSopenharmony_ciAdded <tt>f_findfirst</tt> and <tt>f_findnext.</tt> (<tt>_USE_FIND</tt>)<br>
197e6865dcdSopenharmony_ciFixed <tt>f_unlink</tt> does not remove cluster chain of the file. (appeared at R0.10c)<br>
198e6865dcdSopenharmony_ciFixed <tt>_FS_NORTC</tt> option does not work properly. (appeared at R0.10c)<br>
199e6865dcdSopenharmony_ci</td>
200e6865dcdSopenharmony_ci<td>
201e6865dcdSopenharmony_ci</td>
202e6865dcdSopenharmony_ci</tr>
203e6865dcdSopenharmony_ci<tr>
204e6865dcdSopenharmony_ci<td>R0.10c<br>Nov 9, 2014</td>
205e6865dcdSopenharmony_ci<td>
206e6865dcdSopenharmony_ciAdded a configuration option for the platforms without RTC. (<tt>_FS_NORTC</tt>)<br>
207e6865dcdSopenharmony_ciFixed volume label created by Mac OS X cannot be retrieved with <tt>f_getlabel</tt>. (appeared at R0.09b)<br>
208e6865dcdSopenharmony_ciFixed a potential problem of FAT access that can appear on disk error.<br>
209e6865dcdSopenharmony_ciFixed null pointer dereference on attempting to delete the root direcotry. (appeared at R0.08)<br>
210e6865dcdSopenharmony_ci</td>
211e6865dcdSopenharmony_ci<td>
212e6865dcdSopenharmony_ci</td>
213e6865dcdSopenharmony_ci</tr>
214e6865dcdSopenharmony_ci<tr>
215e6865dcdSopenharmony_ci<td>R0.10b<br>May 19, 2014</td>
216e6865dcdSopenharmony_ci<td>
217e6865dcdSopenharmony_ciFixed a hard error in the disk I/O layer can collapse the directory entry.<br>
218e6865dcdSopenharmony_ciFixed LFN entry is not deleted on delete/rename an object with its lossy converted SFN. (appeared at R0.07)<br>
219e6865dcdSopenharmony_ci</td>
220e6865dcdSopenharmony_ci<td>
221e6865dcdSopenharmony_ci</td>
222e6865dcdSopenharmony_ci</tr>
223e6865dcdSopenharmony_ci<tr>
224e6865dcdSopenharmony_ci<td>R0.10a<br>Jan 15, 2014</td>
225e6865dcdSopenharmony_ci<td>
226e6865dcdSopenharmony_ciAdded arbitrary strings as drive number in the path name. (<tt>_STR_VOLUME_ID</tt>)<br>
227e6865dcdSopenharmony_ciAdded an option for minimum sector size. (<tt>_MIN_SS</tt>)<br>
228e6865dcdSopenharmony_ci2nd argument of <tt>f_rename</tt> can have a drive number and it will be ignored.<br>
229e6865dcdSopenharmony_ciFixed <tt>f_mount</tt> with forced mount fails when drive number is larger than 0. (appeared at R0.10)<br>
230e6865dcdSopenharmony_ciFixed <tt>f_close</tt> invalidates the file object without volume lock.<br>
231e6865dcdSopenharmony_ciFixed volume lock is left acquired after return from <tt>f_closedir</tt>. (appeared at R0.10)<br>
232e6865dcdSopenharmony_ciFixed creation of a directory entry with LFN fails on too many SFN collisions. (appeared at R0.07)<br>
233e6865dcdSopenharmony_ci</td>
234e6865dcdSopenharmony_ci<td>
235e6865dcdSopenharmony_ci</td>
236e6865dcdSopenharmony_ci</tr>
237e6865dcdSopenharmony_ci<tr>
238e6865dcdSopenharmony_ci<td>R0.10<br>Oct 2, 2013</td>
239e6865dcdSopenharmony_ci<td>
240e6865dcdSopenharmony_ciAdded an option for character encoding on the file. (<tt>_STRF_ENCODE</tt>)<br>
241e6865dcdSopenharmony_ciAdded f_closedir.<br>
242e6865dcdSopenharmony_ciAdded forced full FAT scan option for <tt>f_getfree</tt>. (<tt>_FS_NOFSINFO</tt>)<br>
243e6865dcdSopenharmony_ciAdded forced mount option with changes of <tt>f_mount</tt>.<br>
244e6865dcdSopenharmony_ciImproved behavior of volume auto detection.<br>
245e6865dcdSopenharmony_ciImproved write throughput of <tt>f_puts</tt> and <tt>f_printf</tt>.<br>
246e6865dcdSopenharmony_ciChanged argument of <tt>f_chdrive,</tt> <tt>f_mkfs</tt>, <tt>disk_read</tt> and <tt>disk_write</tt>.<br>
247e6865dcdSopenharmony_ciFixed <tt>f_write</tt> can be truncated when the file size is close to 4 GB.<br>
248e6865dcdSopenharmony_ciFixed <tt>f_open</tt>, <tt>f_mkdir</tt> and <tt>f_setlabel</tt> can return incorrect result code on error.<br>
249e6865dcdSopenharmony_ci</td>
250e6865dcdSopenharmony_ci<td>
251e6865dcdSopenharmony_ci</td>
252e6865dcdSopenharmony_ci</tr>
253e6865dcdSopenharmony_ci<tr>
254e6865dcdSopenharmony_ci<td>R0.09b<br>Jan 24, 2013</td>
255e6865dcdSopenharmony_ci<td>
256e6865dcdSopenharmony_ciAdded <tt>f_getlabel</tt> and <tt>f_setlabel</tt>. (<tt>_USE_LABEL</tt>)<br>
257e6865dcdSopenharmony_ci</td>
258e6865dcdSopenharmony_ci<td>
259e6865dcdSopenharmony_ci</td>
260e6865dcdSopenharmony_ci</tr>
261e6865dcdSopenharmony_ci<tr>
262e6865dcdSopenharmony_ci<td>R0.09a<br>Aug 27, 2012</td>
263e6865dcdSopenharmony_ci<td>
264e6865dcdSopenharmony_ciFixed assertion failure due to OS/2 EA on FAT12/16 volume.<br>
265e6865dcdSopenharmony_ciChanged file functions reject null object pointer to avoid crash.<br>
266e6865dcdSopenharmony_ciChanged option name <tt>_FS_SHARE</tt> to <tt>_FS_LOCK</tt>.<br>
267e6865dcdSopenharmony_ci</td>
268e6865dcdSopenharmony_ci<td>
269e6865dcdSopenharmony_ci</td>
270e6865dcdSopenharmony_ci</tr>
271e6865dcdSopenharmony_ci<tr>
272e6865dcdSopenharmony_ci<td>R0.09<br>Sep 6, 2011</td>
273e6865dcdSopenharmony_ci<td>
274e6865dcdSopenharmony_ci<tt>f_mkfs</tt> supports multiple partition on a physical drive.<br>
275e6865dcdSopenharmony_ciAdded <tt>f_fdisk</tt>. (<tt>_MULTI_PARTITION = 2</tt>)<br>
276e6865dcdSopenharmony_ci</td>
277e6865dcdSopenharmony_ci<td>
278e6865dcdSopenharmony_ci</td>
279e6865dcdSopenharmony_ci</tr>
280e6865dcdSopenharmony_ci<tr>
281e6865dcdSopenharmony_ci<td>R0.08b<br>Jan 15, 2011</td>
282e6865dcdSopenharmony_ci<td>
283e6865dcdSopenharmony_ciFast seek function is also applied to <tt>f_read</tt> and <tt>f_write</tt>.<br>
284e6865dcdSopenharmony_ci<tt>f_lseek</tt> reports required table size on creating CLMP.<br>
285e6865dcdSopenharmony_ciExtended format syntax of <tt>f_printf</tt>.<br>
286e6865dcdSopenharmony_ciIgnores duplicated directory separators in given path names.<br>
287e6865dcdSopenharmony_ci</td>
288e6865dcdSopenharmony_ci<td>
289e6865dcdSopenharmony_ci</td>
290e6865dcdSopenharmony_ci</tr>
291e6865dcdSopenharmony_ci<tr>
292e6865dcdSopenharmony_ci<td>R0.08a<br>Aug 16, 2010</td>
293e6865dcdSopenharmony_ci<td>
294e6865dcdSopenharmony_ciAdded <tt>f_getcwd</tt>. (<tt>_FS_RPATH = 2</tt>)<br>
295e6865dcdSopenharmony_ciAdded sector erase function. (<tt>_USE_ERASE</tt>)<br>
296e6865dcdSopenharmony_ciMoved file lock semaphore table from fs object to the bss.<br>
297e6865dcdSopenharmony_ciFixed <tt>f_mkdir</tt> creates wrong directory on non-LFN cfg when the given name contains <tt>';'</tt>.<br>
298e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> creates wrong FAT32 volume.<br>
299e6865dcdSopenharmony_ci</td>
300e6865dcdSopenharmony_ci<td>
301e6865dcdSopenharmony_ci</td>
302e6865dcdSopenharmony_ci</tr>
303e6865dcdSopenharmony_ci<tr>
304e6865dcdSopenharmony_ci<td>R0.08<br>May 15, 2010</td>
305e6865dcdSopenharmony_ci<td>
306e6865dcdSopenharmony_ciAdded an option to <tt>_USE_LFN</tt><br>
307e6865dcdSopenharmony_ciAdded support of file lock. (<tt>_FS_SHARE</tt>)<br>
308e6865dcdSopenharmony_ciAdded fast seek function. (<tt>_USE_FASTSEEK</tt>)<br>
309e6865dcdSopenharmony_ciChanged a type name on the API, <tt>XCHAR</tt> to <tt>TCHAR</tt>.<br>
310e6865dcdSopenharmony_ciChanged member, <tt>fname</tt>, in the <tt>FILINFO</tt> on Unicode cfg.<br>
311e6865dcdSopenharmony_ciString functions support UTF-8 encoding files on Unicode cfg.<br>
312e6865dcdSopenharmony_ci</td>
313e6865dcdSopenharmony_ci<td>
314e6865dcdSopenharmony_ci</td>
315e6865dcdSopenharmony_ci</tr>
316e6865dcdSopenharmony_ci<tr>
317e6865dcdSopenharmony_ci<td>R0.07e<br>Nov 3, 2009</td>
318e6865dcdSopenharmony_ci<td>
319e6865dcdSopenharmony_ciSeparated out configuration options from <tt>ff.h</tt> to <tt>ffconf.h</tt>.<br>
320e6865dcdSopenharmony_ciAdded a configuration option, <tt>_LFN_UNICODE</tt>.<br>
321e6865dcdSopenharmony_ciFixed <tt>f_unlink</tt> fails to remove a sub-dir on <tt>_FS_RPATH</tt>.<br>
322e6865dcdSopenharmony_ciFixed name matching error on the 13 char boundary.<br>
323e6865dcdSopenharmony_ciChanged <tt>f_readdir</tt> to return the SFN with always upper case on non-LFN cfg.<br>
324e6865dcdSopenharmony_ci</td>
325e6865dcdSopenharmony_ci<td>
326e6865dcdSopenharmony_ci</td>
327e6865dcdSopenharmony_ci</tr>
328e6865dcdSopenharmony_ci<tr>
329e6865dcdSopenharmony_ci<td>R0.07c<br>Jan 21, 2009</td>
330e6865dcdSopenharmony_ci<td>
331e6865dcdSopenharmony_ciFixed <tt>f_unlink</tt> may return FR_OK on error.<br>
332e6865dcdSopenharmony_ciFixed wrong cache control in <tt>f_lseek</tt>.<br>
333e6865dcdSopenharmony_ciAdded support of relative path.<br>
334e6865dcdSopenharmony_ciAdded <tt>f_chdir</tt>.<br>
335e6865dcdSopenharmony_ciAdded <tt>f_chdrive</tt>.<br>
336e6865dcdSopenharmony_ciAdded proper case conversion to extended characters.<br>
337e6865dcdSopenharmony_ci</td>
338e6865dcdSopenharmony_ci<td>
339e6865dcdSopenharmony_ci</td>
340e6865dcdSopenharmony_ci</tr>
341e6865dcdSopenharmony_ci<tr>
342e6865dcdSopenharmony_ci<td>R0.07a<br>Apr 14, 2009</td>
343e6865dcdSopenharmony_ci<td>
344e6865dcdSopenharmony_ciSeparated out OS dependent code on re-entrant configuration.<br>
345e6865dcdSopenharmony_ciAdded multiple sector size support.<br>
346e6865dcdSopenharmony_ci</td>
347e6865dcdSopenharmony_ci<td>
348e6865dcdSopenharmony_ci</td>
349e6865dcdSopenharmony_ci</tr>
350e6865dcdSopenharmony_ci<tr>
351e6865dcdSopenharmony_ci<td>R0.07<br>Apr 1, 2009</td>
352e6865dcdSopenharmony_ci<td>
353e6865dcdSopenharmony_ciMerged Tiny-FatFs into FatFs as a buffer configuration option.<br>
354e6865dcdSopenharmony_ciAdded support for long file extension.<br>
355e6865dcdSopenharmony_ciAdded multiple code page support.<br>
356e6865dcdSopenharmony_ciAdded re-entrancy for multitask operation.<br>
357e6865dcdSopenharmony_ciAdded auto cluster size selection to <tt>f_mkfs</tt>.<br>
358e6865dcdSopenharmony_ciAdded rewind option to <tt>f_readdir</tt>.<br>
359e6865dcdSopenharmony_ciChanged result code of critical errors.<br>
360e6865dcdSopenharmony_ciRenamed string functions to avoid name collision.<br>
361e6865dcdSopenharmony_ci</td>
362e6865dcdSopenharmony_ci<td>
363e6865dcdSopenharmony_ci</td>
364e6865dcdSopenharmony_ci</tr>
365e6865dcdSopenharmony_ci<tr>
366e6865dcdSopenharmony_ci<td>R0.06<br>Apr 1, 2008</td>
367e6865dcdSopenharmony_ci<td>
368e6865dcdSopenharmony_ciAdded <tt>f_forward</tt>. (Tiny-FatFs)<br>
369e6865dcdSopenharmony_ciAdded string functions: <tt>f_gets</tt>, <tt>f_putc</tt>, <tt>f_puts</tt> and <tt>f_printf</tt>.<br>
370e6865dcdSopenharmony_ciImproved performance of <tt>f_lseek</tt> on moving to the same or following cluster.<br>
371e6865dcdSopenharmony_ci</td>
372e6865dcdSopenharmony_ci<td>
373e6865dcdSopenharmony_ci</td>
374e6865dcdSopenharmony_ci</tr>
375e6865dcdSopenharmony_ci<tr>
376e6865dcdSopenharmony_ci<td>R0.05a<br>Feb 3, 2008</td>
377e6865dcdSopenharmony_ci<td>
378e6865dcdSopenharmony_ciAdded <tt>f_truncate</tt>.<br>
379e6865dcdSopenharmony_ciAdded <tt>f_utime</tt>.<br>
380e6865dcdSopenharmony_ciFixed off by one error at FAT sub-type determination.<br>
381e6865dcdSopenharmony_ciFixed btr in <tt>f_read</tt> can be mistruncated.<br>
382e6865dcdSopenharmony_ciFixed cached sector is left not flushed when create and close without write.<br>
383e6865dcdSopenharmony_ci</td>
384e6865dcdSopenharmony_ci<td>
385e6865dcdSopenharmony_ci</td>
386e6865dcdSopenharmony_ci</tr>
387e6865dcdSopenharmony_ci<tr>
388e6865dcdSopenharmony_ci<td>R0.05<br>Aug 26, 2007</td>
389e6865dcdSopenharmony_ci<td>
390e6865dcdSopenharmony_ciChanged arguments of <tt>f_read</tt>, <tt>f_write</tt>.<br>
391e6865dcdSopenharmony_ciChanged arguments of <tt>f_mkfs</tt>. (FatFs)<br>
392e6865dcdSopenharmony_ciFixed <tt>f_mkfs</tt> on FAT32 creates incorrect FSInfo. (FatFs)<br>
393e6865dcdSopenharmony_ciFixed <tt>f_mkdir</tt> on FAT32 creates broken directory. (FatFs)<br>
394e6865dcdSopenharmony_ci</td>
395e6865dcdSopenharmony_ci<td>
396e6865dcdSopenharmony_ci</td>
397e6865dcdSopenharmony_ci</tr>
398e6865dcdSopenharmony_ci<tr>
399e6865dcdSopenharmony_ci<td>R0.04b<br>May 5, 2007</td>
400e6865dcdSopenharmony_ci<td>
401e6865dcdSopenharmony_ciAdded <tt>_USE_NTFLAG</tt> option.<br>
402e6865dcdSopenharmony_ciAdded support for FSInfo in FAT32 volume.<br>
403e6865dcdSopenharmony_ciFixed some problems corresponds to FAT32. (Tiny-FatFs)<br>
404e6865dcdSopenharmony_ciFixed DBCS name can result <tt>FR_INVALID_NAME</tt>.<br>
405e6865dcdSopenharmony_ciFixed short seek (<tt>&lt;= csize</tt>) collapses the file object.<br>
406e6865dcdSopenharmony_ci</td>
407e6865dcdSopenharmony_ci<td>
408e6865dcdSopenharmony_ci</td>
409e6865dcdSopenharmony_ci</tr>
410e6865dcdSopenharmony_ci<tr>
411e6865dcdSopenharmony_ci<td>R0.04a<br>Apr 1, 2007</td>
412e6865dcdSopenharmony_ci<td>
413e6865dcdSopenharmony_ciSupported multiple partitions on a plysical drive. (FatFs)<br>
414e6865dcdSopenharmony_ciAdded minimization level 3.<br>
415e6865dcdSopenharmony_ciAdded a capability of extending file size to <tt>f_lseek</tt>.<br>
416e6865dcdSopenharmony_ciFixed an endian sensitive code in <tt>f_mkfs</tt>. (FatFs)<br>
417e6865dcdSopenharmony_ciFixed a problem corresponds to FAT32 support. (Tiny-FatFs)<br>
418e6865dcdSopenharmony_ci</td>
419e6865dcdSopenharmony_ci<td>
420e6865dcdSopenharmony_ci</td>
421e6865dcdSopenharmony_ci</tr>
422e6865dcdSopenharmony_ci<tr>
423e6865dcdSopenharmony_ci<td>R0.04<br>Feb 4, 2007</td>
424e6865dcdSopenharmony_ci<td>
425e6865dcdSopenharmony_ciSupported multiple drive system. (FatFs)<br>
426e6865dcdSopenharmony_ciChanged some APIs for multiple drive system.<br>
427e6865dcdSopenharmony_ciAdded <tt>f_mkfs</tt>. (FatFs)<br>
428e6865dcdSopenharmony_ciAdded <tt>_USE_FAT32</tt> option. (Tiny-FatFs)<br>
429e6865dcdSopenharmony_ci</td>
430e6865dcdSopenharmony_ci<td>
431e6865dcdSopenharmony_ci</td>
432e6865dcdSopenharmony_ci</tr>
433e6865dcdSopenharmony_ci<tr>
434e6865dcdSopenharmony_ci<td>R0.03a<br>Dec 11, 2006</td>
435e6865dcdSopenharmony_ci<td>
436e6865dcdSopenharmony_ciImproved cluster scan algolithm to write files fast.<br>
437e6865dcdSopenharmony_ciFixed <tt>f_mkdir</tt> creates broken directory on FAT32.<br>
438e6865dcdSopenharmony_ci</td>
439e6865dcdSopenharmony_ci<td>
440e6865dcdSopenharmony_ci</td>
441e6865dcdSopenharmony_ci</tr>
442e6865dcdSopenharmony_ci<tr>
443e6865dcdSopenharmony_ci<td>R0.03<br>Sep 22, 2006</td>
444e6865dcdSopenharmony_ci<td>
445e6865dcdSopenharmony_ciAdded <tt>f_rename</tt>.
446e6865dcdSopenharmony_ciChanged option <tt>_FS_MINIMUM</tt> to <tt>_FS_MINIMIZE</tt>.<br>
447e6865dcdSopenharmony_ci</td>
448e6865dcdSopenharmony_ci<td>
449e6865dcdSopenharmony_ci</td>
450e6865dcdSopenharmony_ci</tr>
451e6865dcdSopenharmony_ci<tr>
452e6865dcdSopenharmony_ci<td>R0.02a<br>Jun 10, 2006</td>
453e6865dcdSopenharmony_ci<td>
454e6865dcdSopenharmony_ciAdded a configuration option <tt>_FS_MINIMUM</tt>.<br>
455e6865dcdSopenharmony_ci</td>
456e6865dcdSopenharmony_ci<td>
457e6865dcdSopenharmony_ci</td>
458e6865dcdSopenharmony_ci</tr>
459e6865dcdSopenharmony_ci<tr>
460e6865dcdSopenharmony_ci<td>R0.02<br>Jun 01, 2006</td>
461e6865dcdSopenharmony_ci<td>
462e6865dcdSopenharmony_ciAdded FAT12.<br>
463e6865dcdSopenharmony_ciRemoved unbuffered mode.<br>
464e6865dcdSopenharmony_ciFixed a problem on small (<tt>&lt;32M</tt>) patition.<br>
465e6865dcdSopenharmony_ci</td>
466e6865dcdSopenharmony_ci<td>
467e6865dcdSopenharmony_ci</td>
468e6865dcdSopenharmony_ci</tr>
469e6865dcdSopenharmony_ci<tr>
470e6865dcdSopenharmony_ci<td>R0.01<br>Apr 29, 2006</td>
471e6865dcdSopenharmony_ci<td>
472e6865dcdSopenharmony_ciFirst release.<br>
473e6865dcdSopenharmony_ci</td>
474e6865dcdSopenharmony_ci<td>
475e6865dcdSopenharmony_ci</td>
476e6865dcdSopenharmony_ci</tr>
477e6865dcdSopenharmony_ci</table>
478e6865dcdSopenharmony_ci</body>
479e6865dcdSopenharmony_ci</html>
480