diff options
author | Aaron Patterson <tenderlove@ruby-lang.org> | 2019-04-23 15:16:17 -0700 |
---|---|---|
committer | Aaron Patterson <tenderlove@ruby-lang.org> | 2019-04-23 15:26:21 -0700 |
commit | 19d454a957836a6118f42b0367aea7c823beffae (patch) | |
tree | cfdb8539f7aea4ebc121ce96e0578a99543818e8 /ext | |
parent | 75061f46ae646e821e9228caa5e3b7f23fa609f0 (diff) | |
download | ruby-19d454a957836a6118f42b0367aea7c823beffae.tar.gz |
syntax error can move, so do not cache
Diffstat (limited to 'ext')
-rw-r--r-- | ext/psych/psych_parser.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/psych/psych_parser.c b/ext/psych/psych_parser.c index 8eb2205848..6e58611c3c 100644 --- a/ext/psych/psych_parser.c +++ b/ext/psych/psych_parser.c @@ -1,7 +1,6 @@ #include <psych.h> VALUE cPsychParser; -VALUE ePsychSyntaxError; static ID id_read; static ID id_path; @@ -85,6 +84,8 @@ static VALUE make_exception(yaml_parser_t * parser, VALUE path) line = parser->context_mark.line + 1; column = parser->context_mark.column + 1; + VALUE ePsychSyntaxError = rb_const_get(mPsych, rb_intern("SyntaxError")); + return rb_funcall(ePsychSyntaxError, rb_intern("new"), 6, path, INT2NUM(line), @@ -569,7 +570,6 @@ void Init_psych_parser(void) rb_define_const(cPsychParser, "UTF16BE", INT2NUM(YAML_UTF16BE_ENCODING)); rb_require("psych/syntax_error"); - ePsychSyntaxError = rb_const_get(mPsych, rb_intern("SyntaxError")); rb_define_method(cPsychParser, "parse", parse, -1); rb_define_method(cPsychParser, "mark", mark, 0); |