From 42f0ec97691b4963e61159782ac2af877c8a23b4 Mon Sep 17 00:00:00 2001 From: matz Date: Sat, 24 Jul 2004 09:48:21 +0000 Subject: * range.c (rb_range_beg_len): returns Qnil only when "beg" points outside of a range. No boundary check for "end". git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@6692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- range.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'range.c') diff --git a/range.c b/range.c index 46cc6d0bc..be0896bcf 100644 --- a/range.c +++ b/range.c @@ -480,14 +480,12 @@ rb_range_beg_len(range, begp, lenp, len, err) } if (err == 0 || err == 2) { if (beg > len) goto out_of_range; - if (end > len) - end = len; + if (end > len) end = len; } if (end < 0) end += len; if (!EXCL(range)) end++; /* include end point */ - if (end < 0) goto out_of_range; len = end - beg; - if (len < 0) goto out_of_range; + if (len < 0) len = 0; *begp = beg; *lenp = len; -- cgit