summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-io/src/file_test.c
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-05-06 23:16:03 +0900
committerKOBAYASHI Shuji <[email protected]>2019-05-06 23:32:53 +0900
commite2604c1550562b6fa507570e817cadf9981e1c82 (patch)
treedf8e5d193871981b5814ee1b24f5095bb2904b33 /mrbgems/mruby-io/src/file_test.c
parent31cc8573f058e791c9a08735afa72678e5df7a46 (diff)
downloadmruby-e2604c1550562b6fa507570e817cadf9981e1c82.tar.gz
mruby-e2604c1550562b6fa507570e817cadf9981e1c82.zip
Avoid using `mrb_str_to_cstr` if possible
Because it always allocate new string. Replace with the followings: - Use `RSRING_PTR` if string is guaranteed to be null-terminated. - Use `mrb_string_value_cstr` or `mrb_get_args("z")` if return value isn't modified.
Diffstat (limited to 'mrbgems/mruby-io/src/file_test.c')
-rw-r--r--mrbgems/mruby-io/src/file_test.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mrbgems/mruby-io/src/file_test.c b/mrbgems/mruby-io/src/file_test.c
index e429b06b3..7d36f79b3 100644
--- a/mrbgems/mruby-io/src/file_test.c
+++ b/mrbgems/mruby-io/src/file_test.c
@@ -63,7 +63,7 @@ mrb_stat0(mrb_state *mrb, mrb_value obj, struct stat *st, int do_lstat)
tmp = mrb_funcall(mrb, obj, "is_a?", 1, str_klass);
if (mrb_test(tmp)) {
- char *path = mrb_locale_from_utf8(mrb_str_to_cstr(mrb, obj), -1);
+ char *path = mrb_locale_from_utf8(mrb_string_value_cstr(mrb, &obj), -1);
int ret;
if (do_lstat) {
ret = LSTAT(path, st);