move()を使用してルートディレクトリにサブディレクトリを移動した時の不具合について。
Cente FileSystem Ver5.01 ~ Ver5.71
Cente FileSystem Ver5.01 ~ Ver5.71
・Cente FileSystem Ver4.00 ~ Ver5.71
・Cente exFAT FileSystem Ver1.00
・Cente Compact FileSystem Ver1.00 ~ Ver1.01
・機能仕様の一部を変更
・メタデータ保護機能の仕様を変更しました。また仕様変更に伴いメタデータ保護機能のマクロ名を「POWER_CUT」を「FS_JOURNAL」に改名しました。
・高速fseek処理の仕様を変更しました。また仕様変更に伴い高速fseekマクロ名を「FS_SEEK_BF」を「FS_SEEK_HIGH」に改名しました。
・UNICODE APIの仕様を変更しました。
・rename,moveの仕様を変更しました。
・API追加
UNICODE APIを追加しました。
・API削除
ダイレクトアクセスAPI、ハッシュAPIを削除しました。
・fgetc, fgets, fputc, fputs, fread, fwrite関数修正
ファイルの終端へのfseek後のread/write不具合について修正しました。(Cente障害情報:001-0041)
・putc、fputs関数修正
fflush()後にfputc()又はfputs()を実行すると、FATチェーンの作成が正常に行なわれずデータの上書きが発生する場合があり、その場合、書き込んだサイズ分のデータを読み込むことができない不具合を修正しました。(Cente障害情報:001-0043)
・fs_mk_subd修正
ディレクトリ作成中(mkdir実行中)にディスパッチした場合まだ初期化されていないディレクトリに他のタスクがアクセスできてしまう場合がある不具合を修正しました。(Cente障害情報:001-0045)
・fread関数修正
freadでエラーになった時に読み込んだバイト数を正常に返却できない不具合を修正しました。(Cente障害情報:001-0046)
・move関数修正
ディレクトリのmoveを行う時に、親クラスタ番号の書き換えを正常に行えない不具合を修正しました。(Cente障害情報:001-0047)
・fopen関数修正
同一ファイルの2重openにおけるモードチェック不具合を修正(Cente障害情報:001-0048)
・fs_find_dir_entry_root修正
ディレクトリエントリ作成時にエントリの先頭が0xE5、次のエントリの先頭が0x00だった時に0xE5エントリ
からディレクトリエントリを作成する様に変更しました。
・fs_find_dir_entry_sub修正
ファイル・ディレクトリ作成時に親ディレクトリが存在するか否かチェック処理を追加しました。
・fs_set_dir_entry_root、fs_set_dir_entry修正
ディレクトリエントリのrsv(リザーブ領域)のクリア処理を追加しました。
・fclose関数修正
ファイルサイズが変化しない書き込みを行った後fcloseを行った時にタイムスタンプが更新されない処理を修正しました。
・チェックディスク機能変更
chk_dsk内で、無条件にFATのコピーを行っている箇所があったので、エラー修正が必要な場合のみコピーを行うように変更しました。
・クラスタ番号の終端の変更
クラスタ番号の終端範囲を0x0FFFFFF8~0x0FFFFFFFに変更しました。
・構造体名変更
ST_DIR_ENTRY_SEM、ST_FAT_SEMは同じ意味の構造体なのでST_FSYS_SEMに統一しました
・fs_fat_chain_clear_sub修正
bitmap使用時bitmapの最終クラスタがクリアされない処理を修正しました。
・キャスト処理修正
無駄なキャスト処理を削除しました。
・エラーコード修正
アプリケーションにCT_ERRを返す箇所を修正しました。
・Cente FileSystem Ver5.50 ~ Ver5.71
Cente FileSystem Ver5.00 ~ Ver5.71
Cente FileSystem Ver4.02 ~ Ver5.71
Cente Compact FileSystem Ver1.00 ~ Ver1.01
Cente exFAT FileSystem Ver1.00
Cente FileSystem Ver5.00 ~ Ver5.71
・Cente FileSystem Ver4.00 ~ Ver5.71
・Cente Compact FileSystem Ver 1.00 ~ Ver 1.01
・Cente exFAT FileSystem Ver 1.00
・save_cache関数修正
セーブキャッシュ時にデバイスへのアクセスに失敗した場合、FAT、ディレクトリ領域用のセマフォ返却が行なわれない不具合を修正。
・new_cache, new_dcache関数修正
FAT, Directory Cacheのデバイスへのアクセスに失敗した場合のキャッシュの扱いにおける不具合を修正。
・ct_get_api_fsyser, set_api_fsyser関数修正
エラーコード取得時に格納変数配列を超えてアクセスしてしまう不具合を修正。
・fwrite関数修正
書込みエラー発生時に、正しい戻り値を返さない場合がある不具合を修正。
・fclose関数修正
ファイルクローズ時にエラーが発生した場合、ファイル構造体の資源が減少してしまう不具合を修正。
・readdir_uni関数修正
ビックエンディアンでreaddir_uniを実行した場合に、正しいディレクトリ・ファイル情報が取得できない不具合を修正。
・fread, fwrite関数修正
入出力バッファを更新する時に、バッファに保存しているデータに対するセクタ番号の情報を誤った内容に更新してしまう場合がある不具合を修正。
・fs_find_dir_entry_root_sub、fs_find_dir_entry_sub関数修正
ショートファイル名のチルダ(~)後の番号の上限チェックが行われない為ショートファイル名が重複してしまい、ファイル/ディレクトリに正常にアクセスできない不具合、及びバッファオーバーフローが発生しシステムが誤動作する可能性がある不具合を修正。
・fclose, fflush関数修正
入出力バッファ内の未保存データを書き込み時にエラーが発生した場合、再度fflushを行おうとしてもデータをデバイスに反映できない不具合を修正。
・遅延書込みタスク取り扱い変更
マクロ(DLYWT)指定に依る遅延書込みタスクの組込み方式を廃止しました。
今後はパッケージ内に提案されたサンプルを参考にして頂き導入の可否をご判断願います。
Cente FileSystem Ver 5.50 – Ver 5.70
Cente exFAT FileSystem Ver 1.00
Page 10 of 17