diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2020-09-25 22:54:25 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2020-09-25 22:54:25 +0900 |
| commit | 9ea7b718683386d2dc0787e919fc3d413ab20e67 (patch) | |
| tree | a353c837094f8aab25a8e26474284ff78a151734 /mrbgems | |
| parent | a97f085c52c3a98ffd26e69ac1fd0d43dc83864c (diff) | |
| parent | 57611240a972932ef26a13c6998a7fa90fd33371 (diff) | |
| download | mruby-9ea7b718683386d2dc0787e919fc3d413ab20e67.tar.gz mruby-9ea7b718683386d2dc0787e919fc3d413ab20e67.zip | |
Merge pull request #5087 from dearblue/get-args-string
Prohibit string changes by "s"/"z" specifier of `mrb_get_args()`
Diffstat (limited to 'mrbgems')
| -rw-r--r-- | mrbgems/mruby-eval/src/eval.c | 10 | ||||
| -rw-r--r-- | mrbgems/mruby-io/src/file.c | 3 | ||||
| -rw-r--r-- | mrbgems/mruby-socket/src/socket.c | 6 | ||||
| -rw-r--r-- | mrbgems/mruby-string-ext/src/string.c | 10 |
4 files changed, 17 insertions, 12 deletions
diff --git a/mrbgems/mruby-eval/src/eval.c b/mrbgems/mruby-eval/src/eval.c index eaf07cabe..af6837b81 100644 --- a/mrbgems/mruby-eval/src/eval.c +++ b/mrbgems/mruby-eval/src/eval.c @@ -12,7 +12,7 @@ mrb_value mrb_obj_instance_eval(mrb_state *mrb, mrb_value self); void mrb_codedump_all(mrb_state*, struct RProc*); static struct RProc* -create_proc_from_string(mrb_state *mrb, char *s, mrb_int len, mrb_value binding, const char *file, mrb_int line) +create_proc_from_string(mrb_state *mrb, const char *s, mrb_int len, mrb_value binding, const char *file, mrb_int line) { mrbc_context *cxt; struct mrb_parser_state *p; @@ -131,10 +131,10 @@ exec_irep(mrb_state *mrb, mrb_value self, struct RProc *proc) static mrb_value f_eval(mrb_state *mrb, mrb_value self) { - char *s; + const char *s; mrb_int len; mrb_value binding = mrb_nil_value(); - char *file = NULL; + const char *file = NULL; mrb_int line = 1; struct RProc *proc; @@ -154,9 +154,9 @@ f_instance_eval(mrb_state *mrb, mrb_value self) mrb_get_args(mrb, "*!&", &argv, &argc, &b); if (mrb_nil_p(b)) { - char *s; + const char *s; mrb_int len; - char *file = NULL; + const char *file = NULL; mrb_int line = 1; mrb_value cv; struct RProc *proc; 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; diff --git a/mrbgems/mruby-socket/src/socket.c b/mrbgems/mruby-socket/src/socket.c index 916309bcf..a819dcb29 100644 --- a/mrbgems/mruby-socket/src/socket.c +++ b/mrbgems/mruby-socket/src/socket.c @@ -515,7 +515,8 @@ static mrb_value mrb_ipsocket_ntop(mrb_state *mrb, mrb_value klass) { mrb_int af, n; - char *addr, buf[50]; + const char *addr; + char buf[50]; mrb_get_args(mrb, "is", &af, &addr, &n); if ((af == AF_INET && n != 4) || (af == AF_INET6 && n != 16)) @@ -529,7 +530,8 @@ static mrb_value mrb_ipsocket_pton(mrb_state *mrb, mrb_value klass) { mrb_int af, n; - char *bp, buf[50]; + const char *bp; + char buf[50]; mrb_get_args(mrb, "is", &af, &bp, &n); if ((size_t)n > sizeof(buf) - 1) diff --git a/mrbgems/mruby-string-ext/src/string.c b/mrbgems/mruby-string-ext/src/string.c index 7cf146ec8..ded34a89e 100644 --- a/mrbgems/mruby-string-ext/src/string.c +++ b/mrbgems/mruby-string-ext/src/string.c @@ -1072,7 +1072,8 @@ static mrb_value mrb_str_del_prefix_bang(mrb_state *mrb, mrb_value self) { mrb_int plen, slen; - char *ptr, *s; + const char *ptr; + char *s; struct RString *str = RSTRING(self); mrb_get_args(mrb, "s", &ptr, &plen); @@ -1105,7 +1106,7 @@ static mrb_value mrb_str_del_prefix(mrb_state *mrb, mrb_value self) { mrb_int plen, slen; - char *ptr; + const char *ptr; mrb_get_args(mrb, "s", &ptr, &plen); slen = RSTRING_LEN(self); @@ -1129,7 +1130,8 @@ static mrb_value mrb_str_del_suffix_bang(mrb_state *mrb, mrb_value self) { mrb_int plen, slen; - char *ptr, *s; + const char *ptr; + char *s; struct RString *str = RSTRING(self); mrb_get_args(mrb, "s", &ptr, &plen); @@ -1160,7 +1162,7 @@ static mrb_value mrb_str_del_suffix(mrb_state *mrb, mrb_value self) { mrb_int plen, slen; - char *ptr; + const char *ptr; mrb_get_args(mrb, "s", &ptr, &plen); slen = RSTRING_LEN(self); |
