diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | transcode.c | 5 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Sun Aug 24 13:27:42 2008 Tanaka Akira <akr@fsij.org> + + * transcode.c (str_transcode): check last hash only if 0 < argc. + Sun Aug 24 12:22:15 2008 Tanaka Akira <akr@fsij.org> * include/ruby/encoding.h (rb_econv_substr_append): renamed from diff --git a/transcode.c b/transcode.c index 1ba30c8256..c087716b43 100644 --- a/transcode.c +++ b/transcode.c @@ -1687,7 +1687,10 @@ str_transcode(int argc, VALUE *argv, VALUE *self) VALUE opt; int options = 0; - opt = rb_check_convert_type(argv[argc-1], T_HASH, "Hash", "to_hash"); + if (0 < argc) + opt = rb_check_convert_type(argv[argc-1], T_HASH, "Hash", "to_hash"); + else + opt = Qnil; if (!NIL_P(opt)) { VALUE v; |