Backport(バックポート) #1639
The Parameter will be escape in the mail (メールに含まれるパラメータがエスケープされている)
100%
Description
Overview (現象)¶
ニックネームに「<」や「'」などの記号が含まれると、送られてきたデイリーニュースのメールを表示した際に、HTMLエンティティ(< ' など)に変換されている。
また、ニックネーム以外でもHTMLエンティティ変換される記号が含まれる場合、同様の現象が起こると思われる。
refs: htmlspecialchars
http://php.net/manual/ja/function.htmlspecialchars.php
出力される文字列がこの関数を"何度か"通っていると考えられる。
再現方法¶
- ニックネームを !"#$%&'<<picomu>>?|\-!"#$ にする
- このメンバーでデイリーニュースを受信するように設定しておく
- デイリーニュースタスクを実行する
- 送られてきたデイリーニュースのニックネーム部分を見ると
!"#$%&'<<picomu>>?|\-!"#$
となっている
再現バージョン¶
- OpenPNE3.4.6-dev
他のバージョンでは未確認
Causes (原因)¶
メール本文はHTML形式でないのにも関わらず、エスケープ処理がされている。
Way to fix (修正内容)¶
メールテンプレートではHTMLのようにエスケープ処理を施す必要がない。
エスケープ処理を行っているのは sfViewParameterHolder クラスで、
sfView クラス内でこのインスタンスを生成する際に sfConfig の値を参照してエスケープの有無を決定している。
修正内容としては、sfView で生成された sfViewParameterHolder のインスタンスを、
結果を出力する前に sfViewParameterHolder::setEscaping(false) とする事で、エスケープ処理を行わないようにする。
Related issues
Associated revisions
History
#1
Updated by Masato Nagasawa over 12 years ago
- Status changed from Accepted(着手) to Pending Review(レビュー待ち)
- % Done changed from 0 to 50
更新履歴 737d08f7e7566e5d4b546a0c2844c324c1ef3998 で適用されました。
#2
Updated by Masato Nagasawa over 12 years ago
更新履歴 bdaa292836feba12fea15cf6b1c895d61f0f6c5f で適用されました。
#3
Updated by Masato Nagasawa over 12 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
- Target version changed from OpenPNE 3.4.8 to OpenPNE 3.4.9
3.4.9にて対応します。
#4
Updated by Shinichi Urabe about 12 years ago
- Status changed from Rejected(差し戻し) to Pending Fixing(修正待ち)
#5
Updated by Masato Nagasawa about 12 years ago
- Status changed from Pending Fixing(修正待ち) to Pending Review(レビュー待ち)
更新履歴 e1d9a3651f2e21ef8f77a0ff83e635cd4e2682b5 で適用されました。
#6
Updated by Rimpei Ogawa about 12 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
Description に原因と修正内容を記載してください。
#7
Updated by Masato Nagasawa about 12 years ago
- Status changed from Rejected(差し戻し) to Accepted(着手)
#8
Updated by Masato Nagasawa about 12 years ago
- Status changed from Accepted(着手) to Pending Review(レビュー待ち)
原因と修正内容を追記しました。
#9
Updated by Rimpei Ogawa about 12 years ago
- Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
- % Done changed from 50 to 70
#10
Updated by Mutsumi Imamura about 12 years ago
- Status changed from Pending Testing(テスト待ち) to Fixed(完了)
- % Done changed from 70 to 100