致命的 #799
closedツイートをクリックするとセグフォで落ちる
0%
Description
環境¶
ArchLinux
ruby 2.2.4p230
ruby-glib2 2.2.5
ruby-atk 2.2.5
ruby-cairo 1.14.3
ruby-pango 2.2.5
ruby-gdk_pixbuf2 2.2.5
ruby-gtk2 2.2.5
ruby-nokogiri 1.6.6.2
ruby-httpclient 2.6.0.1
ruby-moneta 0.8.0
mikutter 3.2.11
現象
ツイートをクリックするとGdk::MiraclePainter#clicked()でiob_clicked()を呼んだ時にセグフォで落ちる。
mikutter3.2.10は同じ環境でも落ちない¶
Files
Updated by toshi_a 初音 about 10 years ago
簡単にできるところで、RubyGTK2とかを 2.2.5にしましたが、正常に動いているように見えます。
一応、2.2.5はサポートしていないことになっているので、そっちのメンテナを突付いたほうがいいかもしれませんね。
Updated by Takaaki TSUJIMOTO about 10 years ago
一応、回避策としてdisplay_requirementsプラグインを入れると落ちないことを発見しました。
Updated by Izumi Tsutsui about 10 years ago
Takaaki TSUJIMOTO は書きました:
一応、回避策としてdisplay_requirementsプラグインを入れると落ちないことを発見しました。
これを見て NetBSD/i386 7.0 で mikutter 3.2.11 + ruby-gnome2 3.0.7 で試してみたのですが、
- ~/.mikutter/plugin/display_requirements.rb があると落ちない
- ~/.mikutter/plugin/display_requirements.rb がないとツイートクリックすると落ちる
で再現性ある感じですね……。ちょっとマズいかも。
Updated by Izumi Tsutsui about 10 years ago
mikutter --debug でログ取ってみましたが
notice: {MIKUTTER_DIR}/core/mui/cairo_cell_renderer_message.rb:106:in `block in tree=': now: 1 last: 0
notice: {MIKUTTER_DIR}/core/plugin/gui/hierarchy_parent.rb:71:in `set_active_child': active child set #<Plugin::GUI::Timeline(role=timeline,slug=home_timeline)> => nil
notice: {MIKUTTER_DIR}/core/plugin/gui/hierarchy_parent.rb:71:in `set_active_child': active child set #<Plugin::GUI::Tab(role=tab,slug=home_timeline)> => #<Plugin::GUI::Timeline(role=timeline,slug=home_timeline)>
notice: {MIKUTTER_DIR}/core/plugin/gui/hierarchy_parent.rb:71:in `set_active_child': active child set #<Plugin::GUI::Pane(role=pane,slug=__Plugin::GUI::Pane_2071_54a42046_61a3e473)> => #<Plugin::GUI::Tab(role=tab,slug=home_timeline)>
notice: {MIKUTTER_DIR}/core/plugin/gui/hierarchy_parent.rb:71:in `set_active_child': active child set #<Plugin::GUI::Window(role=window,slug=default)> => #<Plugin::GUI::Pane(role=pane,slug=__Plugin::GUI::Pane_2071_54a42046_61a3e473)>
/usr/pkg/share/mikutter/core/plugin/display_requirements/display_requirements.rb:175:in `iob_clicked': wrong number of arguments (2 for 0)
display_requirements.rb:175:in `iob_clicked' がダメなんでしょうか。
Updated by Izumi Tsutsui about 10 years ago
Izumi Tsutsui は書きました:
display_requirements.rb:175:in `iob_clicked'がダメなんでしょうか。
0dfd5e20 の core/mui/cairo_icon_over_button.rb の差分からコピペして
添付のように displayrequirements.rb の iob_clicked を直すと一応動いているようです。
が、これってプラグイン互換性の観点からするとどうなんですかね?
Updated by toshi_a 初音 about 10 years ago
- Assignee set to toshi_a 初音
- プラグイン名 set to display_requirements
再現できました。これは修正漏れですね。
もともと非互換な変更にdisplay_requirementsが対応していないだけなので、このパッチで正しいです。
Updated by toshi_a 初音 about 10 years ago
- Status changed from 新規 to レビュー待ち
- Assignee changed from toshi_a 初音 to Takaaki TSUJIMOTO
修正してみました。一応つじもんさんの環境でも確認してもらえますか?つついさんもお願いします。
Updated by Izumi Tsutsui about 10 years ago
Updated by Takaaki TSUJIMOTO about 10 years ago
リビジョン c061b55c でツイートをクリックしても落ちずに動作していることを確認できました!
Updated by Takaaki TSUJIMOTO about 10 years ago
- Status changed from レビュー待ち to 解決