プロジェクト

全般

プロフィール

Backport(バックポート) #1638

The Parameter will be escape in the mail (メールに含まれるパラメータがエスケープされている)

Masato Nagasawa13年以上前に追加. 13年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2010-07-14
期日:
進捗率:

100%


説明

Overview (現象)

ニックネームに「<」や「'」などの記号が含まれると、送られてきたデイリーニュースのメールを表示した際に、HTMLエンティティ(&lt; &#039; など)に変換されている。
また、ニックネーム以外でもHTMLエンティティ変換される記号が含まれる場合、同様の現象が起こると思われる。

refs: htmlspecialchars
http://php.net/manual/ja/function.htmlspecialchars.php
出力される文字列がこの関数を"何度か"通っていると考えられる。

再現方法

  1. ニックネームを !"#$%&'<<picomu>>?|\-!"#$ にする
  2. このメンバーでデイリーニュースを受信するように設定しておく
  3. デイリーニュースタスクを実行する
  4. 送られてきたデイリーニュースのニックネーム部分を見ると
    !&quot;#$%&amp;&#039;&lt;&lt;picomu&gt;&gt;?|\-!&quot;#$ 
    

    となっている

再現バージョン

  • OpenPNE3.4.6-dev

他のバージョンでは未確認

Causes (原因)

メール本文はHTML形式でないのにも関わらず、エスケープ処理がされている。

Way to fix (修正内容)

メールテンプレートではHTMLのようにエスケープ処理を施す必要がない。

エスケープ処理を行っているのは sfViewParameterHolder クラスで、
sfView クラス内でこのインスタンスを生成する際に sfConfig の値を参照してエスケープの有無を決定している。

修正内容としては、sfView で生成された sfViewParameterHolder のインスタンスを、
結果を出力する前に sfViewParameterHolder::setEscaping(false) とする事で、エスケープ処理を行わないようにする。


関連するチケット

関連している OpenPNE 3 - Bug(バグ) #1344: The Parameter will be escape in the mail (メールに含まれるパラメータがエスケープされている) Fixed(完了) 2010-07-14

関係しているリビジョン

リビジョン d02fbe85 (差分)
Masato Nagasawa13年以上前に追加

fixed escaping of the parameter is changed to disable. (fixes #1638, BP from #1344)

リビジョン f786f143 (差分)
Masato Nagasawa13年以上前に追加

Revert "fixed escaping of the parameter is changed to disable. (fixes #1638, BP from #1344)"

This reverts commit d02fbe8559d029ec9c04ba9376ac6246fa7074d6.

リビジョン a3c844c5 (差分)
Masato Nagasawa13年以上前に追加

fixed fixed escaping of the parameter is changed to disable using setEscaping(). (fixes #1638, BP from #1344)

履歴

#1 Masato Nagasawa13年以上前に更新

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

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

#2 Hiroki Mogi13年以上前に更新

テスターテストを実施しました。正常に動作していました。

#3 Shogo Kawahara13年以上前に更新

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

親チケット差し戻しによるステータス変更

#4 Masato Nagasawa13年以上前に更新

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

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

#5 Masato Nagasawa13年以上前に更新

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

#6 Shogo Kawahara13年以上前に更新

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

#7 Mutsumi Imamura13年以上前に更新

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

再テスト実施しました。テストOKです。

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