summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-enum-chain/mrblib/chain.rb
diff options
context:
space:
mode:
Diffstat (limited to 'mrbgems/mruby-enum-chain/mrblib/chain.rb')
-rw-r--r--mrbgems/mruby-enum-chain/mrblib/chain.rb5
1 files changed, 4 insertions, 1 deletions
diff --git a/mrbgems/mruby-enum-chain/mrblib/chain.rb b/mrbgems/mruby-enum-chain/mrblib/chain.rb
index 98515ea14..52f5f0656 100644
--- a/mrbgems/mruby-enum-chain/mrblib/chain.rb
+++ b/mrbgems/mruby-enum-chain/mrblib/chain.rb
@@ -40,8 +40,11 @@ class Enumerator
end
def rewind
- @enums.reverse_each do |e|
+ i = @enums.size - 1
+ while 0 <= i
+ e = @enums[i]
e.rewind if e.respond_to?(:rewind)
+ i -= 1
end
self