Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
calling `Fiber#resume` directly from C causes error #3056
Looking at the source code, it seems like that the fiber implementation is not handling such case.
In the current implementation,
However in case
Originally discussed in this tweet. Sorry for the lack of code for reproducing the issue.
@matz Thank you for looking into the issue.
The diff is h2o/h2o@3152e4c. The commit removes the wrapper used to call
With the change, the mruby handler of H2O stops working correctly; when called for the first time, it returns the argument passed to
Have you tried
@matz Thank you for the answer. Will use the proc workaround.
FWIW, to be precise, the code does not protect
A fiber switch should not be deterred unless when a C function is called from mruby;