From 79ead821dd4880725c9c6bb9645b3fad71715c5b Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Mon, 13 May 2019 14:27:54 -0700 Subject: Add NaN / Infinity / MinusInfinity to mark list This prevents the constants from moving. --- ext/json/parser/parser.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'ext') diff --git a/ext/json/parser/parser.c b/ext/json/parser/parser.c index 0bd328ca42..6f0d31c2eb 100644 --- a/ext/json/parser/parser.c +++ b/ext/json/parser/parser.c @@ -2099,8 +2099,13 @@ void Init_parser(void) rb_define_method(cParser, "source", cParser_source, 0); CNaN = rb_const_get(mJSON, rb_intern("NaN")); + rb_gc_register_mark_object(CNaN); + CInfinity = rb_const_get(mJSON, rb_intern("Infinity")); + rb_gc_register_mark_object(CInfinity); + CMinusInfinity = rb_const_get(mJSON, rb_intern("MinusInfinity")); + rb_gc_register_mark_object(CMinusInfinity); i_json_creatable_p = rb_intern("json_creatable?"); i_json_create = rb_intern("json_create"); -- cgit v1.2.3