… | |
… | |
3829 | call (Coro::State coro, SV *coderef) |
3829 | call (Coro::State coro, SV *coderef) |
3830 | ALIAS: |
3830 | ALIAS: |
3831 | eval = 1 |
3831 | eval = 1 |
3832 | CODE: |
3832 | CODE: |
3833 | { |
3833 | { |
|
|
3834 | struct coro *current = SvSTATE_current; |
|
|
3835 | |
3834 | if (coro->mainstack && ((coro->flags & CF_RUNNING) || coro->slot)) |
3836 | if ((coro == current) || (coro->mainstack && ((coro->flags & CF_RUNNING) || coro->slot))) |
3835 | { |
3837 | { |
3836 | struct coro *current = SvSTATE_current; |
|
|
3837 | struct CoroSLF slf_save; |
3838 | struct CoroSLF slf_save; |
3838 | |
3839 | |
3839 | if (current != coro) |
3840 | if (current != coro) |
3840 | { |
3841 | { |
3841 | PUTBACK; |
3842 | PUTBACK; |