Backport(バックポート) #2254
完了
Yahoo! ケータイから入力した絵文字が [] という文字列で保存されてしまう
Naoya Tozuka さんが13年以上前に追加.
13年以上前に更新.
説明
Overview (現象)¶
#2240 のBP以降で発生します。
Yahoo! ケータイから入力した絵文字が [] という文字列で保存されてしまう。
Causes (原因)¶
入力の1バイト目がShiftJISで 0xF7, 0xF9, 0xFB の場合、そのバイトを含む2バイトをSoftbank絵文字と見なし、バイナリ列からOpenPNE形式文字列への変換を行う。
従来、この2バイトをSoftBank旧来の「ISO-2022絵文字 (1B 24 xx yy 0F)」に変換した上でテーブルルックアップしていたが、BP #2240 にてテーブル側(→lib/vendor/OpenPNE2/KtaiEmoji/Softbank.php)がこのバイナリフォーマットを廃し、実体参照で保持するように変更されたので、ルックアップに失敗するようになったのが原因である。
Way to fix (修正内容)¶
lib/vendor/OpenPNE2/KtaiEmoji.php において、ISO-2022絵文字ではなく実体参照をキーとしてテーブルルックアップを行うように修正する。
関連するチケット
2 (0件未完了 — 2件完了)
- ステータス を New(新規) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 対象バージョン を OpenPNE 3.4.14 から OpenPNE 3.4.15 に変更
- 進捗率 を 50 から 70 に変更
stable-3.4.x ブランチ(OpenPNE-3.4.15)に適用されていることを確認しました。取り込みミスといったこともなさそうです。修正内容自体については親チケットでのチェックを以てOKとします。
なお、このチケットでは OpenPNE-3.4.15 への取り込みを前提として進めていますが、もしこのチケットの問題の緊急性(優先度)に変更があれば対応バージョンを変更する必要が生じるかもしれません。
- ステータス を Pending Testing(テスト待ち) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
SoftBankの実機(SoftBank 840P)を中心に絵文字が投稿出来るかを確認しました。
問題ありません。
Docomo SH-05A、au misora でも投稿できるかを確認し問題ありませんでした。
- 対象バージョン を OpenPNE 3.4.15 から OpenPNE 3.4.14.1 に変更
このチケットでの対応によって、 3.4.15 に修正が取り込まれ、 3.4.14.1 もリリースしています。 Target version が 3.4.14.1 となっていますが、このチケットで 3.4.15 に修正を取り込んでいることを示しておきます。
- 優先度 を Normal(通常) から High(高め) に変更
このチケットの内容に対して優先度が Normal なのは不自然なので High に引き上げます。なお、 3.4.14.1 で緊急リリースを行っていることを鑑みると、安定版 3.4 向けのチケットに対しての優先度は Urgent または Immediate としておくことも妥当かと思います。
他の形式にエクスポート: Atom
PDF