diff options
author | charliesome <charliesome@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-24 11:31:21 +0000 |
---|---|---|
committer | charliesome <charliesome@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-24 11:31:21 +0000 |
commit | fff358989970b6ac2d4e5971ee98ca1f8a32d639 (patch) | |
tree | ff152395587e00b413c7813ee58026a9d6925566 /parse.y | |
parent | 8f15f58210e55c08e8c1a2d38c7bf978cdedabc2 (diff) | |
download | ruby-fff358989970b6ac2d4e5971ee98ca1f8a32d639.tar.gz |
* compile.c (make_name_for_block): use PRIsVALUE in format string
instead of %s and RSTRING_PTR to protect objects from being garbage
collected too soon
* encoding.c (str_to_encindex): ditto
* hash.c (rb_hash_fetch_m): ditto
* io.c (rb_io_reopen): ditto
* parse.y (reg_fragment_check_gen): ditto
* parse.y (reg_compile_gen): ditto
* parse.y (ripper_assert_Qundef): ditto
* re.c (rb_reg_raise): ditto
* ruby.c (set_option_encoding_once): ditto
* vm_eval.c (rb_throw_obj): ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -9740,8 +9740,7 @@ reg_fragment_check_gen(struct parser_params* parser, VALUE str, int options) err = rb_reg_check_preprocess(str); if (err != Qnil) { err = rb_obj_as_string(err); - compile_error(PARSER_ARG "%s", RSTRING_PTR(err)); - RB_GC_GUARD(err); + compile_error(PARSER_ARG "%"PRIsVALUE, err); return 0; } return 1; @@ -9844,7 +9843,7 @@ reg_compile_gen(struct parser_params* parser, VALUE str, int options) rb_str_append(rb_str_cat(rb_attr_get(err, mesg), "\n", 1), m); } else { - compile_error(PARSER_ARG "%s", RSTRING_PTR(m)); + compile_error(PARSER_ARG "%"PRIsVALUE, m); } return Qnil; } @@ -11400,7 +11399,7 @@ ripper_assert_Qundef(VALUE self, VALUE obj, VALUE msg) { StringValue(msg); if (obj == Qundef) { - rb_raise(rb_eArgError, "%s", RSTRING_PTR(msg)); + rb_raise(rb_eArgError, "%"PRIsVALUE, msg); } return Qnil; } |