バグ #1318
完了
popup_notifyイベントの第二引数にPlugin::Twitter::Message以外のMessage Modelを渡すと通知が発生しない
toshi_a 初音 さんがほぼ6年前に追加.
5年以上前に更新.
説明
popup_notify イベントでは2つ目の引数にDiva::Modelが渡されることがあるが、Messageクラスであるかどうかだけを判定している。
そのため、Kernel.#spawnの最後の引数としてDiva::Modelが渡ることがあり、名前付き引数として解釈されてしまった結果、引数が不足して通知が発生しないなどの予想できない動作に繋がる。
popup_notify イベントがテキストでもModelでも受け付けてしまうのはもう仕方がないので、Diva::Model一般を受け付ける。
再現手順
Plugin.call(:popup_notify, user_model, some_model)
のようなコードを実行する
- 題名 を popup_notifyイベントの第二引数にPlugin::Twitter::Message以外のMessage Modelwo から popup_notifyイベントの第二引数にPlugin::Twitter::Message以外のMessage Modelを渡すと通知が発生しない に変更
- ステータス を 実装待ち から レビュー待ち に変更
- 担当者 を削除 (
toshi_a 初音)
- ブランチ を topic/1318-popup-notify-suddenly-death にセット
ちゃんと見るといろいろとlibnotifyプラグインはいろいろと意味不明。
- アイコンの表示・非表示をuserの有無で分岐してる
- userは必須なので、ない場合の処理が要らない
- しかも、通知タイトルの表示・非表示も同じ条件で分岐してる
- アイコンの一時ファイルは、元画像の拡張子を踏襲する割には必ずpngになる
- 関連している バグ #1322: エラーメッセージを出さず突然正常終了することがある を追加
- ステータス を レビュー待ち から マージ待ち に変更
他の形式にエクスポート: Atom
PDF