summaryrefslogtreecommitdiff
path: root/encoding.c
diff options
context:
space:
mode:
Diffstat (limited to 'encoding.c')
-rw-r--r--encoding.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/encoding.c b/encoding.c
index e9fcbfcb3e..7b7d301133 100644
--- a/encoding.c
+++ b/encoding.c
@@ -1101,8 +1101,13 @@ rb_enc_set_default_internal(VALUE encoding)
if (default_internal_index != -2)
/* Already set */
return;
- default_internal_index = encoding == Qnil ?
- -1 :rb_enc_to_index(rb_to_encoding(encoding));
+ if (NIL_P(encoding)) {
+ default_internal_index = -1;
+ default_internal = 0;
+ return;
+ }
+
+ default_internal_index = rb_enc_to_index(rb_to_encoding(encoding));
/* Convert US-ASCII => UTF-8 */
if (default_internal_index == rb_usascii_encindex())
default_internal_index = rb_utf8_encindex();