[ruby-core:122459] [Ruby Bug#21400] rb_bug() hit when killing current root fiber on non-main thread
From:
"luke-gru (Luke Gruber) via ruby-core" <ruby-core@...>
Date:
2025-06-05 15:30:31 UTC
List:
ruby-core #122459
Issue #21400 has been updated by luke-gru (Luke Gruber).
I created a PR: https://github.com/ruby/ruby/pull/13526
----------------------------------------
Bug #21400: rb_bug() hit when killing current root fiber on non-main thread
https://bugs.ruby-lang.org/issues/21400#change-113647
* Author: luke-gru (Luke Gruber)
* Status: Open
* ruby -v: 3.5.0dev
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
This following code hits an `rb_bug`:
```ruby
Thread.new { Fiber.current.kill }.join
```
Normally fibers gracefully handle this case by terminating and switching to another fiber, but if there is no other fiber it raises the `FIBER_FATAL_FIBER_KILLED` error and this is not caught by the starting thread, resulting in a bug.
--
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/