diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-18 18:32:24 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-18 18:32:24 +0000 |
commit | 69ee4246e59593b8bea71d4ad8a151d5a3d52ae9 (patch) | |
tree | d1f0ac8fd11e9f8e7ee149635f9b74fec25391d0 /transcode.c | |
parent | db881044bcaf3fce9fbce99f6af8d3cd353ef05e (diff) |
* transcode.c (str_transcode0): fix: :xml option doesn't
work on str.encode([options]) form without default_internal.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'transcode.c')
-rw-r--r-- | transcode.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/transcode.c b/transcode.c index b01d4a1f08..1997e310c3 100644 --- a/transcode.c +++ b/transcode.c @@ -2457,7 +2457,8 @@ str_transcode0(int argc, VALUE *argv, VALUE *self, int ecflags, VALUE ecopts) if (argc == 0) { arg1 = rb_enc_default_internal(); if (NIL_P(arg1)) { - return -1; + if (!ecflags) return -1; + arg1 = rb_obj_encoding(str); } ecflags |= ECONV_INVALID_REPLACE | ECONV_UNDEF_REPLACE; } |