summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-io/src
diff options
context:
space:
mode:
authordearblue <[email protected]>2020-09-24 22:25:26 +0900
committerdearblue <[email protected]>2020-09-25 21:02:58 +0900
commit57611240a972932ef26a13c6998a7fa90fd33371 (patch)
treea353c837094f8aab25a8e26474284ff78a151734 /mrbgems/mruby-io/src
parenta97f085c52c3a98ffd26e69ac1fd0d43dc83864c (diff)
downloadmruby-57611240a972932ef26a13c6998a7fa90fd33371.tar.gz
mruby-57611240a972932ef26a13c6998a7fa90fd33371.zip
Prohibit string changes by "s"/"z" specifier of `mrb_get_args()`
- The `s` specifier is a string pointer obtained without performing `mrb_str_modify()`, so it cannot be changed. - The `z` specifier cannot be changed because it is a string pointer obtained by `RSTRING_CSTR()` which returns `const char *`.
Diffstat (limited to 'mrbgems/mruby-io/src')
-rw-r--r--mrbgems/mruby-io/src/file.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mrbgems/mruby-io/src/file.c b/mrbgems/mruby-io/src/file.c
index d3c4b3885..53ed4b69d 100644
--- a/mrbgems/mruby-io/src/file.c
+++ b/mrbgems/mruby-io/src/file.c
@@ -557,7 +557,8 @@ mrb_file_s_readlink(mrb_state *mrb, mrb_value klass) {
mrb_raise(mrb, E_NOTIMP_ERROR, "readlink is not supported on this platform");
return mrb_nil_value(); // unreachable
#else
- char *path, *buf, *tmp;
+ const char *path;
+ char *buf, *tmp;
size_t bufsize = 100;
ssize_t rc;
mrb_value ret;