summaryrefslogtreecommitdiff
path: root/ruby.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-21 04:09:45 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-21 04:09:45 +0000
commit8c68d9a15286e6bc0e76e1da1de433a4962b1cba (patch)
treefe20100056ba637a0d05c920b8411e0a24d2958e /ruby.c
parent5a717c35eac92094910985699ba11ff126983782 (diff)
* encoding.c (rb_locale_charmap): return nil if no locale information.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.c')
-rw-r--r--ruby.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ruby.c b/ruby.c
index f16ed424c8..525a3cdb19 100644
--- a/ruby.c
+++ b/ruby.c
@@ -139,9 +139,12 @@ static rb_encoding *
locale_encoding(void)
{
VALUE codeset = rb_locale_charmap(Qnil);
- char *name = StringValueCStr(codeset);
+ char *name;
int idx;
+ if (codeset == Qnil)
+ return rb_default_encoding();
+
idx = rb_enc_find_index(name);
if (idx < 0)
return rb_default_encoding();