fix SEGV bug for mrb_str_new

mrb_str_new causes seg-fault when 3rd argument is negative.
This commit is contained in:
cubicdaiya
2014-02-28 01:30:09 +09:00
parent c39e2a4e5d
commit 30fe3f5d4b
+3
View File
@@ -216,6 +216,9 @@ mrb_value
mrb_str_new(mrb_state *mrb, const char *p, size_t len)
{
struct RString *s;
if ((mrb_int)len < 0) {
mrb_raise(mrb, E_ARGUMENT_ERROR, "negative string size (or size too big)");
}
s = str_new(mrb, p, len);
return mrb_obj_value(s);