From c5a691323201ace5f5299b6914c8e1709918c521 Mon Sep 17 00:00:00 2001 From: nagachika Date: Wed, 20 May 2015 17:06:08 +0000 Subject: merge revision(s) 49792: [Backport #10918] * gc.c (id2ref): prohibit from accessing internal objects. [ruby-core:68348] [Bug #10918] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@50565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- gc.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gc.c') diff --git a/gc.c b/gc.c index c84da503ea..b843e7bb73 100644 --- a/gc.c +++ b/gc.c @@ -2761,6 +2761,9 @@ id2ref(VALUE obj, VALUE objid) if (!is_live_object(objspace, ptr)) { rb_raise(rb_eRangeError, "%p is recycled object", p0); } + if (RBASIC(ptr)->klass == 0) { + rb_raise(rb_eRangeError, "%p is internal object", p0); + } return (VALUE)ptr; } -- cgit v1.2.3