プロジェクト

全般

プロフィール

Bug(バグ) #2366

Minoru Takai12年以上前に更新

h3. Overview (現象)

OpenPNE3.4.15 をインストールし、受信メッセージのあるメンバーが /message に遷移すると以下のような Fatal error が発生する。 新規にOpenPNE3.4をインストールし、/messageに遷移すると以下のようなFatal errorが発生する。
/message/sendList などでも同様のエラーが発生する。 /message/sendListなどでも同様のエラーが発生する。

Fatal error: Call to undefined function op_link_to_member() in /home/user/sns/34x.example.jp/plugins/opMessagePlugin/apps/pc_frontend/modules/message/templates/listSuccess.php on line 135



※原因がplugin側にあるという確証を得る調査はまだ行われていないため、このチケットの作成プロジェクトに誤りがあった場合、作成すべきプロジェクトに変更して下さい。

h3. 再現バージョン



* OpenPNE-3.4.15
** バンドルプラグイン opMessagePlugin-0.9.2
OpenPNE3.4.16

原因から明らかですが、 op_link_to_member() が定義されていない OpenPNE のバージョンで opMessagePlugin-0.9.2 を用いた場合に問題が生じます。 3.4.15 は opMessagePlugin-0.9.2 がバンドルされているため特に問題です。

h3. 再現ブランチ



* OpenPNE-3.4.15
* stable-3.4.x
remotes/origin/stable-3.4.x

h3. 再現手順

# 新規に OpenPNE-3.4.15 を設置する 1. 新規にOpenPNE3.4を設置する(この際使用するbranchはremotes/origin/stable-3.4.x)
# メンバーを招待する(メッセージの送信相手を用意するため)
# メンバーAからメンバーBにメッセージを送信する
# メンバーAの送信箱、あるいはメンバーBの受信箱を開こうとすると、表示の途中で Fatal Error が発生する
** 一部のテンプレートの HTML のみが出力される(テンプレートの途中で処理が止まっており、CSSなど共通部分のHTMLも読み込まれていない)。
2. OpenPNE君で(/message)に遷移する

h3. Causes (原因)

op_link_to_member() は #840 によって追加されたヘルパー関数だが、 #840 の対応内容の事情により 3.4 向けのバックポートは行なわれていなかった。

つまり 3.4 系ではこの関数は使えないことになる。しかし、コア側とバージョンが対応しないプラグインにおいて op_link_to_member() を使っている箇所があり、今回の問題が生じている。

発覚しているのは opMessagePlugin であり、このプラグインで op_link_to_member() を使ったのは 0.9.2 からであるらしい。 0.9.2 においては #1995 の修正で追加されている。

opMessagePlugin-0.9.2 がバンドルされているのは OpenPNE-3.4.15, OpenPNE-3.6beta12 からである。

戻る