Project

General

Profile

Bug #5526

SEGV: ./ruby -rfiber -ve'f=Fiber.new{f.resume};f.transfer'

Added by naruse (Yui NARUSE) over 8 years ago. Updated over 8 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby -v: ruby 2.0.0dev (2011-10-31 trunk 33581) [x86_64-freebsd8.2]
Backport:
[ruby-dev:44742]

Description

FreeBSD 9 にて、./ruby -rfiber -ve'f=Fiber.new{f.resume};f.transfer' で SEGV します。
他のプラットフォームでも dead fiber call 例外なのはおかしくて、
double resume 例外になるべきでしょう。

#1

Updated by ko1 (Koichi Sasada) over 8 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

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


  • cont.c (rb_fiber_m_transfer, rb_fiber_resume): prohibit using "resume" after "transfer" method are used. You should not mix "resume" fiber and "transfer" fiber. [Bug #5526]
  • NEWS: add information about this change.

Also available in: Atom PDF