summaryrefslogtreecommitdiff
path: root/enumerator.c
diff options
context:
space:
mode:
authorMarcelo Pereira <[email protected]>2022-07-29 15:09:54 +0200
committerNobuyoshi Nakada <[email protected]>2023-07-15 15:24:43 +0900
commitf15123c34ce80f3928612befe2a9aaf4c9d27fda ()
treedb2cb9f714fdf997585334c370dd3c570ff71b80 /enumerator.c
parent82cd70ef935e6aac8cc929af24fb21c2157524f7 (diff)
Fix stack trace for rescued StopIteration
Notes: Merged: https://.com/ruby/ruby/pull/6201
-rw-r--r--enumerator.c15
1 files changed, 13 insertions, 2 deletions
@@ -165,7 +165,10 @@ static VALUE sym_each, sym_cycle, sym_yield;
static VALUE lazy_use_super_method;
#define id_call idCall
#define id_each idEach
#define id_eqq idEqq
#define id_initialize idInitialize
@@ -787,8 +790,16 @@ get_next_values(VALUE obj, struct enumerator *e)
{
VALUE curr, vs;
- if (e->stop_exc)
- rb_exc_raise(e->stop_exc);
curr = rb_fiber_current();