7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.05.00.02 beta公開
7-zip32.dll/7-zip64.dll/7z.dll文字化け対策版 Ver.15.05.00.02 betaを公開しました。
●開発履歴
○Ver.15.05.00.02 beta – 2015/06/29
・リスト表示で日本語が文字化けする不具合を修正。(Special Thanks!:kiyohiro様)
・ファイル名がUTF-8で格納されている場合でも末尾の’/’からディレクトリ判定を行うように。(Special Thanks!:kiyohiro様)
リスト表示(recesでは/mL)で日本語が文字化けする不具合を修正しました。
また、ファイル名がUTF-8で格納されている書庫についても、末尾の’/’の有無でディレクトリ判定を行う様にしました。
7-Zipではファイル名末尾の’/’有無->属性の順でディレクトリ判定が行われますが、
末尾’/’の確認がUTF-8に対応していないため、UTF-8で格納かつ属性が保存されていない書庫ではディレクトリがファイル扱いで作成され、正しく解凍出来ませんでした。
そこで、UTF-8に対応するよう、以下のように修正しました。
LPCSTR prev = #if defined(_WIN32) && !defined(UNDER_CE) CharPrevExA((WORD)codePage, name, &name[name.Len()], 0); /* 追加ここから */ if (*prev != '/') { prev = &name[name.Len()]; --prev; while ((*prev & 0xc0) == 0x80) --prev; } /* 追加ここまで */ #else (LPCSTR)(name) + (name.Len() - 1); #endif