summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--transcode.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 7e8e4aa381..2997cbca62 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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;