1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

load.c: make fstrings from C strings sooner

The underlying string objects will become fstrings anyways,
so create the fstring directly from the C string to reduce
intermediate garbage.

* load.c (rb_provide, rb_provide): create fstring

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
normal 2017-04-27 03:16:39 +00:00
parent d249b047c2
commit 42c2df9937

5
load.c
View file

@ -571,7 +571,7 @@ rb_provide_feature(VALUE feature)
void
rb_provide(const char *feature)
{
rb_provide_feature(rb_usascii_str_new2(feature));
rb_provide_feature(rb_fstring_cstr(feature));
}
NORETURN(static void load_failed(VALUE));
@ -1058,8 +1058,7 @@ rb_require_safe(VALUE fname, int safe)
VALUE
rb_require(const char *fname)
{
VALUE fn = rb_str_new2(fname);
OBJ_FREEZE(fn);
VALUE fn = rb_str_new_cstr(fname);
return rb_require_safe(fn, rb_safe_level());
}