チケット #36390

サロゲートペア代替文字処理の不備

登録: 2016-06-15 19:25 最終更新: 2016-07-05 00:54

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし

詳細

連続するサロゲートペアが現れるUnicode文字列(⊇UCS-4文字で記述されたUnicode文字列)をContentBuilderUCS2.javaに読み込ませた時の代替文字置換処理に不備が発見された。

U+1F411を表す連続したサロゲートペアchar文字、[\ud83d,\udc11]を入力すると、[ 0xd8,0x3d、0xdc、0x11 ]の4つのデコードエラーと共に代替文字4文字からなる"????"が出力されるはず。だが"????"の後に\udc11が追加された5文字が出力される。

この障害はチケット#36356の調査中に露見したものである。 少なくとも JinParser 1.407.2 の頃から存在する障害。

※サロゲートペアが異常系として処理されること自体は仕様。

後続サロゲートペアchar文字を代替文字列に含めないよう修正が必要。

チケットの履歴 (4 件中 3 件表示)

2016-06-15 19:25 更新者: olyutorskii
  • 新しいチケット "サロゲートペア代替文字処理の不備" が作成されました
2016-06-15 19:26 更新者: olyutorskii
  • 解決法なし から 受領 に更新されました
2016-06-17 02:26 更新者: olyutorskii
  • 解決法受領 から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2016-06-17 02:26 に更新されました
コメント

JinParser 1.408.6 にて対処。 https://osdn.jp/rel/jindolf/JinParser/1.408.6

2016-07-05 00:54 更新者: olyutorskii
コメント

JinParser1.409.2よりサロゲートペア出現は正常系として通すようになった。

サロゲートペアを異常系として弾くのはJindolf側の責務となった。(EntityConverterのオプション機能としてサロゲートペアを弾くオプションを追加)

JinArchiverではサロゲートペアを弾かない仕様となる予定。

添付ファイルリスト

添付ファイルはありません

編集

このチケットにコメントを追加するには、ログインが必要です » ログインする