diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-27 06:27:39 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-27 06:27:39 +0000 |
commit | ce2b982cd2c839fa736375e7906057785f4f3738 (patch) | |
tree | e38ce9dc8c3ced6336d596375822c62d093df6be | |
parent | cd2fd33edf4df972ea90b9e94a24866028247683 (diff) | |
download | ruby-ce2b982cd2c839fa736375e7906057785f4f3738.tar.gz |
* encoding.c (rb_enc_codelen): show codepoint in error message.
* include/ruby/encoding.h (rb_enc_codelen): comment it returns
positive integer.
* string.c (rb_str_concat): rb_enc_codelen doesn't return 0.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | encoding.c | 2 | ||||
-rw-r--r-- | include/ruby/encoding.h | 2 | ||||
-rw-r--r-- | string.c | 3 |
4 files changed, 11 insertions, 5 deletions
@@ -1,3 +1,12 @@ +Thu Dec 27 15:25:16 2007 Tanaka Akira <akr@fsij.org> + + * encoding.c (rb_enc_codelen): show codepoint in error message. + + * include/ruby/encoding.h (rb_enc_codelen): comment it returns + positive integer. + + * string.c (rb_str_concat): rb_enc_codelen doesn't return 0. + Thu Dec 27 15:18:44 2007 Tanaka Akira <akr@fsij.org> * encoding.c (rb_enc_codelen): error message refined. diff --git a/encoding.c b/encoding.c index 5c74871ecd..2e8b9b54ea 100644 --- a/encoding.c +++ b/encoding.c @@ -680,7 +680,7 @@ rb_enc_codelen(int c, rb_encoding *enc) { int n = ONIGENC_CODE_TO_MBCLEN(enc,c); if (n == 0) { - rb_raise(rb_eArgError, "invalid codepoint"); + rb_raise(rb_eArgError, "invalid codepoint 0x%x", c); } return n; } diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h index 1b1e3d7c59..1a57876555 100644 --- a/include/ruby/encoding.h +++ b/include/ruby/encoding.h @@ -87,7 +87,7 @@ int rb_enc_ascget(const char *p, const char *e, int *len, rb_encoding *enc); int rb_enc_codepoint(const char *p, const char *e, rb_encoding *enc); #define rb_enc_mbc_to_codepoint(p, e, enc) ONIGENC_MBC_TO_CODE(enc,(UChar*)(p),(UChar*)(e)) -/* -> codelen or raise exception */ +/* -> codelen>0 or raise exception */ int rb_enc_codelen(int code, rb_encoding *enc); /* code,ptr,encoding -> write buf */ @@ -1104,9 +1104,6 @@ rb_str_concat(VALUE str1, VALUE str2) int pos = RSTRING_LEN(str1); int len = rb_enc_codelen(c, enc); - if (len == 0) { - rb_raise(rb_eArgError, "invalid codepoint 0x%x", c); - } rb_str_resize(str1, pos+len); rb_enc_mbcput(c, RSTRING_PTR(str1)+pos, enc); return str1; |