From 433a5b4693a9c0a932fd6407bd7d26c415b4f0aa Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 8 Dec 2015 14:47:38 +0000 Subject: compile.c: make opt a string value * compile.c (iseq_ibf_dump): rb_check_string_type() returns nil if the object does not have to_str method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- compile.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/compile.c b/compile.c index ce69b00729..3dbed3829c 100644 --- a/compile.c +++ b/compile.c @@ -8064,9 +8064,10 @@ iseq_ibf_dump(const rb_iseq_t *iseq, VALUE opt) header.size = ibf_dump_pos(&dump); if (RTEST(opt)) { - VALUE opt_str = rb_check_string_type(opt); + VALUE opt_str = opt; + const char *ptr = StringValuePtr(opt_str); header.extra_size = RSTRING_LENINT(opt_str) + 1; - ibf_dump_write(&dump, RSTRING_PTR(opt_str), header.extra_size); + ibf_dump_write(&dump, ptr, header.extra_size); } else { header.extra_size = 0; -- cgit v1.2.3