summaryrefslogtreecommitdiffstats
path: root/regenc.c
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-06 20:17:55 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-06 20:17:55 +0000
commit7422647298bd2e048ed0cfceadad8587076d4b40 (patch)
treeff0fc7bed4c140309c028a564ade0cecf91d621f /regenc.c
parentffa18ef8c872ede034380c8a6b20aee9910f153a (diff)
downloadruby-7422647298bd2e048ed0cfceadad8587076d4b40.tar.gz
ruby-7422647298bd2e048ed0cfceadad8587076d4b40.tar.xz
ruby-7422647298bd2e048ed0cfceadad8587076d4b40.zip
* regenc.c (code_to_mbc): raise RangeError Integer#chr
when more than 255 is given with single byte encoding. [ruby-dev:35789] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'regenc.c')
-rw-r--r--regenc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/regenc.c b/regenc.c
index 75a6a039c..5afa1807b 100644
--- a/regenc.c
+++ b/regenc.c
@@ -629,6 +629,8 @@ onigenc_single_byte_code_to_mbclen(OnigCodePoint code ARG_UNUSED, OnigEncoding e
extern int
onigenc_single_byte_code_to_mbc(OnigCodePoint code, UChar *buf, OnigEncoding enc ARG_UNUSED)
{
+ if (code > 0xff)
+ rb_raise(rb_eRangeError, "%"PRIdVALUE " out of char range", code);
*buf = (UChar )(code & 0xff);
return 1;
}