aboutsummaryrefslogtreecommitdiffstats
path: root/enum.c
diff options
context:
space:
mode:
authormarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-11-05 22:14:25 +0000
committermarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-11-05 22:14:25 +0000
commitbe02351b6bde64558df258132a8b3e3452db46f7 (patch)
tree81e00f65c2fb3f233816186246e5deaeef6d2ee9 /enum.c
parented8ee69fe076110807555fd4ffef3bbcbbe5b9f1 (diff)
downloadruby-be02351b6bde64558df258132a8b3e3452db46f7.tar.gz
Fix size on Enumerable#cycle when the size is 0 [Bug #14082].
Patch by Kenichi Kamiya git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'enum.c')
-rw-r--r--enum.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/enum.c b/enum.c
index 4613ab733c..2b2806a6c8 100644
--- a/enum.c
+++ b/enum.c
@@ -2845,6 +2845,7 @@ enum_cycle_size(VALUE self, VALUE args, VALUE eobj)
VALUE size = enum_size(self, args, 0);
if (size == Qnil) return Qnil;
+ if (FIXNUM_ZERO_P(size)) return size;
if (args && (RARRAY_LEN(args) > 0)) {
n = RARRAY_AREF(args, 0);