* gc.c (chain_finalized_object): fix precedence.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
2236f6a682
commit
a9f6a95530
@ -1,3 +1,7 @@
|
|||||||
|
Tue Feb 16 22:09:27 2010 Yusuke Endoh <mame@tsg.ne.jp>
|
||||||
|
|
||||||
|
* gc.c (chain_finalized_object): fix precedence.
|
||||||
|
|
||||||
Tue Feb 16 21:32:01 2010 Yusuke Endoh <mame@tsg.ne.jp>
|
Tue Feb 16 21:32:01 2010 Yusuke Endoh <mame@tsg.ne.jp>
|
||||||
|
|
||||||
* gc.c (rb_objspace_call_finalizer): always run finalizer at exit,
|
* gc.c (rb_objspace_call_finalizer): always run finalizer at exit,
|
||||||
|
2
gc.c
2
gc.c
@ -2623,7 +2623,7 @@ static int
|
|||||||
chain_finalized_object(st_data_t key, st_data_t val, st_data_t arg)
|
chain_finalized_object(st_data_t key, st_data_t val, st_data_t arg)
|
||||||
{
|
{
|
||||||
RVALUE *p = (RVALUE *)key, **final_list = (RVALUE **)arg;
|
RVALUE *p = (RVALUE *)key, **final_list = (RVALUE **)arg;
|
||||||
if (p->as.basic.flags & (FL_FINALIZE|FL_MARK) == FL_FINALIZE) {
|
if ((p->as.basic.flags & (FL_FINALIZE|FL_MARK)) == FL_FINALIZE) {
|
||||||
if (BUILTIN_TYPE(p) != T_ZOMBIE) {
|
if (BUILTIN_TYPE(p) != T_ZOMBIE) {
|
||||||
p->as.free.flags = FL_MARK | T_ZOMBIE; /* remain marked */
|
p->as.free.flags = FL_MARK | T_ZOMBIE; /* remain marked */
|
||||||
RDATA(p)->dfree = 0;
|
RDATA(p)->dfree = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user