Hi,
We shouldn't mix Fiber#yield, Fiber.resume and Fiber.transfer. In other
words, fiber1 shouldn't use Fiber#resume on the your example.
I think it is a bug of current Ruby.
--
// SASADA Koichi at atdot dot net