1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.

* ext/syck/rubyext.c: should protect global variable from GC.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
ocean 2005-12-16 08:56:09 +00:00
parent 5700ea57ff
commit 44ebf5de34
2 changed files with 9 additions and 1 deletions

View file

@ -1,3 +1,9 @@
Fri Dec 16 17:53:45 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
* ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.
* ext/syck/rubyext.c: should protect global variable from GC.
Fri Dec 16 11:44:43 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
* ext/syck/rubyext.c (syck_resolver_tagurize): fixed memory leak.

View file

@ -122,7 +122,7 @@ rb_syck_compile(self, port)
syck_free_parser( parser );
bc = rb_str_new2( ret );
bc = rb_str_new2( ret ); S_FREE( ret );
if ( taint ) OBJ_TAINT( bc );
return bc;
}
@ -2264,10 +2264,12 @@ Init_syck()
rb_define_method( cResolver, "node_import", syck_resolver_node_import, 1 );
rb_define_method( cResolver, "tagurize", syck_resolver_tagurize, 1 );
rb_global_variable( &oDefaultResolver );
oDefaultResolver = rb_funcall( cResolver, rb_intern( "new" ), 0 );
rb_define_singleton_method( oDefaultResolver, "node_import", syck_defaultresolver_node_import, 1 );
rb_define_singleton_method( oDefaultResolver, "detect_implicit", syck_defaultresolver_detect_implicit, 1 );
rb_define_const( rb_syck, "DefaultResolver", oDefaultResolver );
rb_global_variable( &oGenericResolver );
oGenericResolver = rb_funcall( cResolver, rb_intern( "new" ), 0 );
rb_define_singleton_method( oGenericResolver, "node_import", syck_genericresolver_node_import, 1 );
rb_define_const( rb_syck, "GenericResolver", oGenericResolver );