summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--mrbgems/mruby-enum-ext/mrblib/enum.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/mrbgems/mruby-enum-ext/mrblib/enum.rb b/mrbgems/mruby-enum-ext/mrblib/enum.rb
index 2f6c4dbbc..873de1fbc 100644
--- a/mrbgems/mruby-enum-ext/mrblib/enum.rb
+++ b/mrbgems/mruby-enum-ext/mrblib/enum.rb
@@ -355,16 +355,18 @@ module Enumerable
min = nil
first = true
- self.each do |val|
+ self.each do |*val|
if first
+ val = val.__svalue
max = val
min = val
first = false
else
if block
- max = val if block.call(val, max) > 0
- min = val if block.call(val, min) < 0
+ max = val.__svalue if block.call(*val, max) > 0
+ min = val.__svalue if block.call(*val, min) < 0
else
+ val = val.__svalue
max = val if (val <=> max) > 0
min = val if (val <=> min) < 0
end