プロジェクト

全般

プロフィール

Backport(バックポート) #4405

Bug(バグ) #2261: メール投稿で画像を1つだけ送信すると画像として扱われないことがある

メール投稿で画像を1つだけ送信すると画像として扱われないことがある

isao sano約4年前に追加. ほぼ4年前に更新.

ステータス:
New(新規)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2011-07-05
期日:
進捗率:

0%


説明

Overview (現象)

日記やコメント等をメールで投稿する際、本文なしで画像を1つだけ送信すると、画像として認識されずBase64テキストとして本文に展開されてしまうことがある。

本来は本文なしで画像のみが送信された場合のフローに従い、メール投稿を成功させず日記が作成されないようにすべき(そして「本文を入力してください。」というメールを返信すべき)である。

★写真のみの投稿も(オプション等で)許可すべきではないかという議論も必要かと思われるが別チケットで。

Environment (再現バージョン)

  • OpenPNE 3.6beta

Way to repro (再現方法)

  • 現在この現象が確認できているのはiPhoneのMMSからメール投稿を行ったケースのみ。

Causes (原因)

iPhoneのMMSでは、画像単体を送信した場合 Content-type: image/jpeg で画像データのみを(base64エンコーディングでテキスト化して)送信するが、
opMailMessage クラスは multipart でないメールを全てJISエンコーディングのテキストとして認識してしまうのが原因。

Way to fix (修正内容)

Content-type が image/jpeg, image/png, image/gif などのメールを正しく処理できるように opMailMessage クラスを修正する。

base64_decode_test.php 表示 - データ末尾に余分な改行が含まれる場合の base64_decode() の挙動を確認するスクリプト (188 KB) Naoya Tozuka, 2011-07-06 18:55

履歴

#1 kaoru nほぼ4年前に更新

  • 対象バージョンOpenPNE 3.8.36 から OpenPNE 3.8.x に変更

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