プロジェクト

全般

プロフィール

Bug(バグ) #2253

Yahoo! ケータイから入力した絵文字が [] という文字列で保存されてしまう

Rimpei Ogawa12年以上前に追加. 8年以上前に更新.

ステータス:
Fixed(完了)
優先度:
High(高め)
担当者:
対象バージョン:
開始日:
2011-06-29
期日:
進捗率:

100%

3.6 で発生するか:
Yes
3.8 で発生するか:
Unknown (未調査)

説明

Overview (現象)

#2135 の変更以降で発生します。

Yahoo! ケータイから入力した絵文字が [] という文字列で保存されてしまう。

Causes (原因)

入力の1バイト目がShiftJISで 0xF7, 0xF9, 0xFB の場合、そのバイトを含む2バイトをSoftbank絵文字と見なし、バイナリ列からOpenPNE形式文字列への変換を行う。

従来、この2バイトをSoftBank旧来の「ISO-2022絵文字 (1B 24 xx yy 0F)」に変換した上でテーブルルックアップしていたが、#2135 にてテーブル側(→lib/vendor/OpenPNE2/KtaiEmoji/Softbank.php)がこのバイナリフォーマットを廃し、実体参照で保持するように変更されたので、ルックアップに失敗するようになったのが原因である。

Way to fix (修正内容)

lib/vendor/OpenPNE2/KtaiEmoji.php において、ISO-2022絵文字ではなく実体参照をキーとしてテーブルルックアップを行うように修正する。


関連するチケット

関連している OpenPNE 3 - Bug(バグ) #2135: Yahoo! ケータイにおける SSL 仕様変更対応(絵文字) Fixed(完了) 2011-05-25
関連している OpenPNE 3 - Backport(バックポート) #2254: Yahoo! ケータイから入力した絵文字が [] という文字列で保存されてしまう Fixed(完了) 2011-06-29
関連している OpenPNE 3 - Backport(バックポート) #2255: Yahoo! ケータイから入力した絵文字が [] という文字列で保存されてしまう Fixed(完了) 2011-06-29

関係しているリビジョン

リビジョン 4d842ba9 (差分)
Naoya Tozuka12年以上前に追加

Yahoo! ケータイで入力した絵文字が正しく保存されない問題(#2135以降)の解決 (fixes #2253)

リビジョン b714d9d1 (差分)
Naoya Tozuka12年以上前に追加

(refs #2253) Reverted commits for an appropriate fix

リビジョン bc724f31 (差分)
Naoya Tozuka12年以上前に追加

Fixed the problem on Yahoo! mobile that saved emoji as empty string '[]' after #2135 (fixes #2253)

リビジョン 747cadbe (差分)
Naoya Tozuka12年以上前に追加

renamed the variable $web to $codepoint which explains itself better (fixes #2253)

リビジョン ee80c5cc (差分)
Naoya Tozuka12年以上前に追加

Added a unit test for #2253 (refs #2253)

履歴

#1 Naoya Tozuka12年以上前に更新

  • ステータスNew(新規) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 4d842ba9439f0c498492382f74fbca40abd4b780 で適用されました。
(コミットメッセージが日本語になっていましたので、 b714d9d1 にて一旦revertします)

#2 Naoya Tozuka12年以上前に更新

更新履歴 bc724f316912208a3292791e462513549302bc6e で適用されました。

#3 Rimpei Ogawa12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

レビューOKです。

#4 Rimpei Ogawa12年以上前に更新

  • ステータスPending Testing(テスト待ち) から Pending Review(レビュー待ち) に変更
  • 進捗率70 から 50 に変更

#5 Rimpei Ogawa12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Rejected(差し戻し) に変更

再度ソースコードを確認したところ、 $web という変数名が不適切ですので変更してください。

#6 Naoya Tozuka12年以上前に更新

  • ステータスRejected(差し戻し) から Pending Review(レビュー待ち) に変更

更新履歴 commit:"671dff6d5279c872f0de2303c0569268686a7763" で適用されました。

#7 Naoya Tozuka12年以上前に更新

更新履歴 747cadbe51c7e61a2393e1925c0f46e88b648274 で適用されました。

#8 Rimpei Ogawa12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

修正確認しました。OKです。

#9 Minoru Takai12年以上前に更新

  • 優先度Normal(通常) から High(高め) に変更
  • 対象バージョンOpenPNE 3.7.0 にセット
  • 3.6 で発生するかYes にセット

このチケットの内容に対して優先度が Normal なのは不自然なので High に引き上げます。

#10 Shingo Yamada12年以上前に更新

  • 360対象beta13 にセット

#11 Yuma Sakata12年以上前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

テストOKです。

#12 kaoru n8年以上前に更新

  • 3.8 で発生するかUnknown (未調査) にセット

他の形式にエクスポート: Atom PDF