Project

General

Profile

Actions

Backport #7658

closed

Rabbit が Ruby 1.9.3p362 で落ちる

Added by tommy (Masahiro Tomita) about 11 years ago. Updated about 11 years ago.

Status:
Closed
Assignee:
-
[ruby-dev:46831]

Description

Ubuntu 12.10 で Rabbit http://rabbit-shocker.org/ が Ruby 1.9.3p362 で落ちます。
表紙は表示されるのですが、ページを送っていると落ちます。
Rabbit の問題の可能性もあるのですが、Ruby 1.9.3p327 ではちゃんと動作していたので、Ruby の問題かと思って、このMLに投稿してます。
もしかしたら OS まわりの環境の問題かもしれません。

Git で ruby_1_9_3 のブランチを追いかけてみると、commit 19015605 で落ちるようになったようです(Subversion の r38314)。

再現方法: ($HOME/ruby193 に Ruby をインストールしてあります)

% ~/ruby193/bin/gem install rabbit
% cd ~/ruby193/lib/ruby/gems/1.9.1/gems/rabbit-2.0.6/sample
% ~/ruby193/bin/rabbit rabbit.rd
Rabbit のウィンドウが表示されたらスペースキーでページを進める

落ちたときのエラーはこんな感じで、スタックトレース等は出力されません。

 zsh: segmentation fault  ~/ruby193/bin/rabbit rabbit.rd

--
とみたまさひろ
http://twitter.com/tmtms
D68F 8F55 7F6C 5908 88EB 1EBA 25ED DEE7 BBE8 1752


Files

vm.c.patch (1.23 KB) vm.c.patch eitoball (Eito Katagiri), 01/06/2013 03:44 PM

Related issues 2 (0 open2 closed)

Related to Ruby master - Bug #7507: lazy.map{}.zip{} causes SEGVClosed12/04/2012Actions
Is duplicate of Backport193 - Backport #7629: Segmentation faultClosed12/28/2012Actions

Updated by wanabe (_ wanabe) about 11 years ago

[Bug #7507] の対策としてコミットされた r38213 を Backport することで落ちなくなるように思います。
[Bug #7629] については再現できていないのですが、もしかしたら同じ現象ではないかと見ています。
どうでしょうか。

Updated by eitoball (Eito Katagiri) about 11 years ago

=begin
[Bug #7629] の方で報告した一人です。 r38213 を参考にして添付のような変更した場合、10回実行して7回ほどSegmentation Faultが発生していたのが、10回以上実行しても全く発生しなくなりました。

参考までSegmentation Faultを再現させるコードは、 ((<こちら|URL:https://github.com/eitoball/bug7629>)) にあります。
=end

Updated by tommy (Masahiro Tomita) about 11 years ago

On Sun, 6 Jan 2013 10:24:02 +0900
"wanabe (_ wanabe)" wrote:

[Bug #7507] の対策としてコミットされた r38213 を Backport することで落ちなくなるように思います。
[Bug #7629] については再現できていないのですが、もしかしたら同じ現象ではないかと見ています。
どうでしょうか。

落ちなくなりました!
ありがとうございます!

--
とみたまさひろ
http://twitter.com/tmtms
D68F 8F55 7F6C 5908 88EB 1EBA 25ED DEE7 BBE8 1752

Actions #4

Updated by usa (Usaku NAKAMURA) about 11 years ago

  • Status changed from Open to Closed

This issue was solved with changeset r38726.
Antonio, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


merge revision(s) 38213: [Backport #7629]

* vm.c (rb_vm_make_proc): save the proc made from the given block so
  that it will not get collected.  [ruby-core:50545] [Bug #7507]
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0