Project

General

Profile

バグ #1283

world_settingに渡すブロック内で例外が発生するとクラッシュする

Added by cob odo about 1 year ago. Updated about 1 year ago.

Status:
分類待ち
Priority:
通常
Assignee:
-
Target version:
プラグイン名:
ブランチ:
クラッシュする:
Yes

Description

関係するやり取り↓
https://social.mikutter.hachune.net/@toshi_a/100433938755267146

Delayer::Deferredの問題かもしれませんが、一応こちらで報告しておきます。

再現手順に書いた例だと恣意的に感じると思いますが、Debian(mikutterパッケージが使うCK/CSが凍結されたもののまま)での報告で、以下のようなものがありました。

https://social.mikutter.hachune.net/@tdd_1055/100440408179225364
https://social.mikutter.hachune.net/@tdd_1055/100440498577737436
https://social.mikutter.hachune.net/@tdd_1055/100440508638251538

CK/CSが使えずWorldの作成に失敗するのは仕方ありませんが、クラッシュは防ぐべきだと思いましたのでチケット化しておきます。


再現手順

1) mikutterコンソールを開いて以下のコードを入力し、Ctrl+Enterで評価する。

Plugin.create(:world_rejecter) do
  world_setting :world_rejecter, "理想送り" do
    raise RuntimeError.new("新たな天地を望むか?")
  end
end

2) 「Worldを追加」で「理想送り」を選択してOKを押すとクラッシュ
3) 次に起動すると以下のような内容の報告ダイアログが出る
RuntimeError 新たな天地を望むか?
{MIKUTTER_DIR}/core/plugin/change_account/change_account.rb:85:in `instance_eval'
{MIKUTTER_DIR}/core/plugin/change_account/change_account.rb:85:in `block (3 levels) in <top (required)>'
{MIKUTTER_DIR}/core/plugin/gtk/dialog_window.rb:191:in `instance_eval'
{MIKUTTER_DIR}/core/plugin/gtk/dialog_window.rb:191:in `block (2 levels) in run'

History

#1

Updated by cob odo about 1 year ago

  • 再現手順 updated (diff)

Also available in: Atom PDF