Actions
バグ #939
closedopenイベントで、URIに対応するModelが見つからなかった時にもintentが呼ばれてしまう
プラグイン名:
ブランチ:
クラッシュする:
Description
存在しないツイートを開こうとすると以下のエラーで落ちます。
/home/osak/app/mikutter/core/plugin/message_detail_view/message_detail_view.rb:6:in `block (2 levels) in <top (required)>': undefined method `uri' for nil:NilClass (NoMethodError)
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/listener.rb:25:in `call'
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:97:in `block (2 levels) in call_all_listeners'
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:96:in `each'
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:96:in `block in call_all_listeners'
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:95:in `catch'
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:95:in `call_all_listeners'
from /home/osak/.gem/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:39:in `block in call'
from /home/osak/.gem/gems/delayer-0.0.2/lib/delayer/procedure.rb:24:in `run'
from /home/osak/.gem/gems/delayer-0.0.2/lib/delayer/extend.rb:58:in `run_once'
from /home/osak/.gem/gems/delayer-0.0.2/lib/delayer/extend.rb:30:in `run'
from /home/osak/.gem/gems/delayer-0.0.2/lib/delayer.rb:43:in `method_missing'
from /home/osak/app/mikutter/core/plugin/gtk/delayer.rb:10:in `block in boot'
from /home/osak/app/mikutter/core/plugin/gtk/mainloop.rb:10:in `main'
from /home/osak/app/mikutter/core/plugin/gtk/mainloop.rb:10:in `mainloop'
from mikutter.rb:65:in `boot!'
from mikutter.rb:94:in `<main>'
Updated by toshi_a 初音 almost 9 years ago
- Subject changed from 存在しないツイートを開くと落ちる to openイベントで、URIに対応するModelが見つからなかった時にもintentが呼ばれてしまう
- Assignee set to toshi_a 初音
Intent側の問題だということがわかったのでタイトルを抽象的なかんじにしておきました
以下のコードをmikutter上で実行すると再現できます。
Plugin.call(:open, 'https://twitter.com/takahyy/status/724609897170497536')
Updated by toshi_a 初音 almost 9 years ago
- Status changed from 新規 to 終了
他のIntentであれば開けるかも知れない(Webなんかは、404ページだが一応開ける)ということで、Modelを取得できなかった場合はforwardするようにしました。
結果として、vanillaの状態では「ツイートの詳細」を選んでも、結局Webブラウザが立ち上がって、そのツイートは存在しないと表示されるようになりました。
Actions