From 4f0e238f2854a9f3e5a1f3cbb0c8d32e66dc15d8 Mon Sep 17 00:00:00 2001 From: usa Date: Mon, 13 Apr 2015 07:52:40 +0000 Subject: merge revision(s) 49875: [Backport #10946] * class.c (rb_prepend_module): need a WB for klass -> origin. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@50285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- class.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'class.c') diff --git a/class.c b/class.c index da58a6c3bf..ae190eec09 100644 --- a/class.c +++ b/class.c @@ -936,7 +936,7 @@ rb_prepend_module(VALUE klass, VALUE module) OBJ_WB_UNPROTECT(origin); /* TODO: conservertive shading. Need more survery. */ RCLASS_SET_SUPER(origin, RCLASS_SUPER(klass)); RCLASS_SET_SUPER(klass, origin); - RCLASS_ORIGIN(klass) = origin; + RB_OBJ_WRITE(klass, &RCLASS_ORIGIN(klass), origin); RCLASS_M_TBL_WRAPPER(origin) = RCLASS_M_TBL_WRAPPER(klass); RCLASS_M_TBL_INIT(klass); st_foreach(RCLASS_M_TBL(origin), move_refined_method, -- cgit v1.2.3