Ticket #39723

macOS版 日本語環境の判定に失敗する

Open Date: 2019-11-04 22:00 Last Update: 2019-11-07 01:30

Reporter:
Owner:
Type:
Status:
Closed
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

macOS Mojave (10.14)とmacOS Catalina(10.15)にて、日本語環境の判定ができていない。 MIDIデータの日本語タイトルが文字化けして表示される。

Ticket History (3/4 Histories)

2019-11-04 22:00 Updated by: yknk
  • New Ticket "macOS版 日本語環境の判定に失敗する" created
2019-11-04 22:01 Updated by: yknk
Comment

原因

デフォルトエンコーディングID取得メソッド MTFileOpenPanel::GetDefaultEncodingId にて、 以下の値が"ja_JP"であれば、日本語環境であると判定していた。

pLocale = [[NSLocale currentLocale] localeIdentifier];
しかし、この値が"en_JP"で返されていた。OSの仕様変更による影響と考えられる。 Mojaveよりも以前から、本自称が発生していた可能性がある。

2019-11-04 22:02 Updated by: yknk
Comment

対策

iOS版でも同様の問題が発生していたため、iOS版の対策をそのまま適用する。

  • #36987 iOS版 日本語環境のロケール判定に失敗する

具体的には、[NSLocale preferredLanguages]で返される先頭のオブジェクトを参照し、 "ja"で始まる文字列だった場合は、日本語環境であると判断する。

preferredLanguagesが返す値の例は、"ja-JP"である。

(Edited, 2019-11-04 22:05 Updated by: yknk)
2019-11-07 01:30 Updated by: yknk
  • Status Update from Open to Closed
  • Resolution Update from None to Fixed

Attachment File List

No attachments

Edit

Please login to add comment to this ticket » Login