aboutsummaryrefslogtreecommitdiffstats
path: root/ext/json/parser/parser.rl
diff options
context:
space:
mode:
Diffstat (limited to 'ext/json/parser/parser.rl')
-rw-r--r--ext/json/parser/parser.rl5
1 files changed, 2 insertions, 3 deletions
diff --git a/ext/json/parser/parser.rl b/ext/json/parser/parser.rl
index b9b51aaa4b..8ec3699b88 100644
--- a/ext/json/parser/parser.rl
+++ b/ext/json/parser/parser.rl
@@ -700,12 +700,11 @@ static VALUE cParser_initialize(int argc, VALUE *argv, VALUE self)
json->object_class = Qnil;
json->array_class = Qnil;
}
- source = rb_convert_type(source, T_STRING, "String", "to_str");
+ StringValue(source);
if (!json->quirks_mode) {
- source = convert_encoding(StringValue(source));
+ source = convert_encoding(source);
}
json->current_nesting = 0;
- StringValue(source);
json->len = RSTRING_LEN(source);
json->source = RSTRING_PTR(source);;
json->Vsource = source;