ruby/test/objspace
nagachika bdbe605385 merge revision(s) 7bd7aee02e: [Backport #18464]
Fix interpreter crash caused by RUBY_INTERNAL_EVENT_NEWOBJ + Ractors

	When a Ractor is created whilst a tracepoint for
	RUBY_INTERNAL_EVENT_NEWOBJ is active, the interpreter crashes. This is
	because during the early setup of the Ractor, the stdio objects are
	created, which allocates Ruby objects, which fires the tracepoint.
	However, the tracepoint machinery tries to dereference the control frame
	(ec->cfp->pc), which isn't set up yet and so crashes with a null pointer
	dereference.

	Fix this by not firing GC tracepoints if cfp isn't yet set up.
	---
	 gc.c                         |  1 +
	 test/objspace/test_ractor.rb | 17 +++++++++++++++++
	 2 files changed, 18 insertions(+)
	 create mode 100644 test/objspace/test_ractor.rb
2023-03-25 14:35:55 +09:00
..
test_objspace.rb merge revision(s) cf7d07570f: [Backport #18938] 2022-09-25 21:24:30 +09:00
test_ractor.rb merge revision(s) 7bd7aee02e: [Backport #18464] 2023-03-25 14:35:55 +09:00