操作
バグ #1470
完了mastodon ユーザープロファイルを開くとクラッシュする
プラグイン名:
mastodon
ブランチ:
クラッシュする:
はい
説明
f8d5c6b5 にてスポンサー対応いただいたところで
このような報告を上げるのは大変心苦しいのですが
pkgsrc + NetBSD/i386 9.0 のオレオレ環境で
mikutter 4.0.6 + pluggaloid 1.5.0 の組み合わせで
mastodon のユーザープロファイルトゥート右クリックメニューから開くと
100%再現でクラッシュします。
NoMethodError undefined method `domain' for #<Plugin:0xa6d3fddc> /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/plugin.rb:321:in `method_missing' {MIKUTTER_DIR}/plugin/gui/widget.rb:97:in `method_missing' {MIKUTTER_DIR}/plugin/mastodon_account_viewer/mastodon_account_viewer.rb:259:in `block (2 levels) in <top (required)>' [以下 再現手順 を参照]
なお同じ環境で pluggaloid gem だけを 1.2.0 に戻すと正常にプロファイルタブが表示されます。
再現手順
- mikutter 4.0.6 + pluggaloid 1.5.0 の組み合わせで起動
- マストドンTLタブを表示
- マストドンアカウント選択
- マストドンの任意のトゥート上で右クリックメニュー → 「xxx(ユーザー)について」を選択
- クラッシュする
NoMethodError undefined method `domain' for #<Plugin:0xa6d3fddc> /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/plugin.rb:321:in `method_missing' {MIKUTTER_DIR}/plugin/gui/widget.rb:97:in `method_missing' {MIKUTTER_DIR}/plugin/mastodon_account_viewer/mastodon_account_viewer.rb:259:in `block (2 levels) in <top (required)>' {MIKUTTER_DIR}/plugin/gui/widget.rb:71:in `instance_exec' {MIKUTTER_DIR}/plugin/gui/widget.rb:71:in `instance_eval_with_delegate' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:42:in `block (3 levels) in <top (required)>' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/filter.rb:33:in `filtering' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:82:in `block (2 levels) in filtering' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:81:in `each' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:81:in `reduce' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:81:in `block in filtering' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:80:in `catch' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:80:in `filtering' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/plugin.rb:66:in `filtering' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:60:in `block in cluster_initialize' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:61:in `each' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:61:in `each' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:61:in `sort_by' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:61:in `cluster_initialize' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:27:in `block (4 levels) in <top (required)>' {MIKUTTER_DIR}/plugin/gui/widget.rb:71:in `instance_exec' {MIKUTTER_DIR}/plugin/gui/widget.rb:71:in `instance_eval_with_delegate' {MIKUTTER_DIR}/plugin/gui/gui.rb:28:in `block (2 levels) in <top (required)>' {MIKUTTER_DIR}/plugin/modelviewer/modelviewer.rb:20:in `block (3 levels) in <top (required)>' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/listener.rb:25:in `call' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:241:in `block (2 levels) in call_all_listeners' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:240:in `each' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:240:in `block in call_all_listeners' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:239:in `catch' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:239:in `call_all_listeners' /usr/pkg/lib/ruby/gems/2.6.0/gems/pluggaloid-1.5.0/lib/pluggaloid/event.rb:62:in `block in call' /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer/procedure.rb:26:in `run' /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer/extend.rb:117:in `run_once_without_pop_reserve' /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer/extend.rb:109:in `run_once' /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer.rb:38:in `method_missing' {MIKUTTER_DIR}/plugin/gtk/mainloop.rb:23:in `block (2 levels) in mainloop' {MIKUTTER_DIR}/plugin/gtk/mainloop.rb:12:in `loop' {MIKUTTER_DIR}/plugin/gtk/mainloop.rb:12:in `block in mainloop' {MIKUTTER_DIR}/plugin/gtk/mainloop.rb:10:in `catch' {MIKUTTER_DIR}/plugin/gtk/mainloop.rb:10:in `mainloop' {MIKUTTER_DIR}/mikutter.rb:79:in `boot!' {MIKUTTER_DIR}/mikutter.rb:115:in `<main>'
操作