diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-03-07 18:51:32 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-03-07 18:51:32 +0900 |
| commit | ac8d04fb6c2072c9af0b0587044360dde3b3b77d (patch) | |
| tree | ab80df9179be235331935999dc4393670746a5ea /src/class.c | |
| parent | 035898c7215c417e2ba24e759c033710ac74c6cc (diff) | |
| parent | 4bc19d5fadaf85523774eac29520cca03a1516b1 (diff) | |
| download | mruby-ac8d04fb6c2072c9af0b0587044360dde3b3b77d.tar.gz mruby-ac8d04fb6c2072c9af0b0587044360dde3b3b77d.zip | |
Merge pull request #1820 from ksss/string-embed
Embed small string
Diffstat (limited to 'src/class.c')
| -rw-r--r-- | src/class.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/class.c b/src/class.c index 8188db131..9880a82fa 100644 --- a/src/class.c +++ b/src/class.c @@ -511,7 +511,6 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) case 's': { mrb_value ss; - struct RString *s; char **ps = 0; int *pl = 0; @@ -519,9 +518,8 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) pl = va_arg(ap, int*); if (i < argc) { ss = to_str(mrb, *sp++); - s = mrb_str_ptr(ss); - *ps = s->ptr; - *pl = s->len; + *ps = RSTRING_PTR(ss); + *pl = RSTRING_LEN(ss); i++; } } @@ -537,14 +535,14 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) if (i < argc) { ss = to_str(mrb, *sp++); s = mrb_str_ptr(ss); - len = (mrb_int)strlen(s->ptr); - if (len < s->len) { + len = (mrb_int)strlen(RSTRING_PTR(ss)); + if (len < RSTRING_LEN(ss)) { mrb_raise(mrb, E_ARGUMENT_ERROR, "string contains null byte"); } - else if (len > s->len) { + else if (len > RSTRING_LEN(ss)) { mrb_str_modify(mrb, s); } - *ps = s->ptr; + *ps = RSTRING_PTR(ss); i++; } } @@ -1298,7 +1296,7 @@ mrb_class_name(mrb_state *mrb, struct RClass* c) mrb_str_concat(mrb, path, mrb_ptr_to_str(mrb, c)); mrb_str_cat_lit(mrb, path, ">"); } - return mrb_str_ptr(path)->ptr; + return RSTRING_PTR(path); } const char* |
