зеркало из https://github.com/github/ruby.git
* ext/syck/rubyext.c (syck_node_transform): ruby object holding
explicitly freed SyckNode caused SEGV. [ruby-dev:28067] ... I think syck GC problem was solved now! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
e4413741de
Коммит
fb7f646086
|
@ -1,3 +1,10 @@
|
|||
Tue Dec 20 12:33:01 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
|
||||
|
||||
* ext/syck/rubyext.c (syck_node_transform): ruby object holding
|
||||
explicitly freed SyckNode caused SEGV. [ruby-dev:28067]
|
||||
|
||||
... I think syck GC problem was solved now!
|
||||
|
||||
Tue Dec 20 01:46:48 2005 Tanaka Akira <akr@m17n.org>
|
||||
|
||||
* io.c (rb_f_backquote): fix a GC problem on
|
||||
|
|
|
@ -1783,7 +1783,7 @@ syck_node_transform( self )
|
|||
SyckNode *n;
|
||||
SyckNode *orig_n;
|
||||
Data_Get_Struct(self, SyckNode, orig_n);
|
||||
t = Data_Wrap_Struct( cNode, syck_node_mark, NULL, 0 );
|
||||
t = Data_Wrap_Struct( cNode, syck_node_mark, syck_free_node, 0 );
|
||||
|
||||
switch (orig_n->kind)
|
||||
{
|
||||
|
@ -1824,9 +1824,7 @@ syck_node_transform( self )
|
|||
n->anchor = syck_strndup( orig_n->anchor, strlen( orig_n->anchor ) );
|
||||
}
|
||||
n->id = t;
|
||||
t = rb_funcall( oDefaultResolver, s_node_import, 1, t );
|
||||
syck_free_node( n );
|
||||
return t;
|
||||
return rb_funcall( oDefaultResolver, s_node_import, 1, t );
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Загрузка…
Ссылка в новой задаче