From b1f5840aefe0c4edac9dc3f238bdb757521eb67c Mon Sep 17 00:00:00 2001 From: Tomoyuki Sahara Date: Tue, 13 Nov 2012 16:50:41 +0900 Subject: fix the issue String#slice with Range may return broken String. --- src/range.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/range.c b/src/range.c index 6fe7964fe..085d5b1c0 100644 --- a/src/range.c +++ b/src/range.c @@ -286,7 +286,7 @@ mrb_range_beg_len(mrb_state *mrb, mrb_value range, mrb_int *begp, mrb_int *lenp, if (end > len) end = len; } if (end < 0) end += len; - if (!r->excl) end++; /* include end point */ + if (!r->excl && end < len) end++; /* include end point */ len = end - beg; if (len < 0) len = 0; -- cgit v1.2.3