ruby-changes:12285
From: matz <ko1@a...>
Date: Tue, 7 Jul 2009 12:55:34 +0900 (JST)
Subject: [ruby-changes:12285] Ruby:r23978 (trunk): * enum.c (rb_enum_join): should propagate taint to the return
matz 2009-07-07 12:55:18 +0900 (Tue, 07 Jul 2009) New Revision: 23978 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=23978 Log: * enum.c (rb_enum_join): should propagate taint to the return value. the change was overridden by r23967. [ruby-core:24176] Modified files: trunk/ChangeLog trunk/enum.c Index: ChangeLog =================================================================== --- ChangeLog (revision 23977) +++ ChangeLog (revision 23978) @@ -1,3 +1,8 @@ +Tue Jul 7 12:47:28 2009 Yukihiro Matsumoto <matz@r...> + + * enum.c (rb_enum_join): should propagate taint to the return + value. the change was overridden by r23967. [ruby-core:24176] + Tue Jul 7 11:56:52 2009 Nobuyoshi Nakada <nobu@r...> * gc.c (GC_PROF_SET_MALLOC_INFO, GC_PROF_SET_HEAP_INFO): simplified. Index: enum.c =================================================================== --- enum.c (revision 23977) +++ enum.c (revision 23978) @@ -1825,10 +1825,14 @@ rb_enum_join(VALUE obj, VALUE sep) { VALUE args[2]; + args[0] = 0; args[1] = sep; rb_block_call(obj, id_each, 0, 0, join_i, (VALUE)args); - return args[0] ? args[0] : rb_str_new(0, 0); + if (!args[0]) args[0] = rb_str_new(0, 0); + OBJ_INFECT(args[0], obj); + + return args[0]; } /* -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/