[#29700] ruby NKF モジュールの CP932 系エンコーディングパッチ — MORIYAMA Masayuki <moriyama@...>

ミラクルリナックスの森山です。

10 messages 2006/10/27

[#29726] cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...>

MoonWolfです。

74 messages 2006/10/31
[#29728] Re: cgi.rbのDoS脆弱性について — Yukihiro Matsumoto <matz@...> 2006/11/01

まつもと ゆきひろです

[#29729] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/01

MoonWolfです。

[#29731] Re: cgi.rbのDoS脆弱性について — Yukihiro Matsumoto <matz@...> 2006/11/01

まつもと ゆきひろです

[#29745] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/02

MoonWolfです。

[#29751] Re: cgi.rbのDoS脆弱性について — "U.Nakamura" <usa@...> 2006/11/02

こんにちは、なかむら(う)です。

[#29753] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/03

MoonWolfです。

[#29754] Re: cgi.rbのDoS脆弱性について — "U.Nakamura" <usa@...> 2006/11/03

こんにちは、なかむら(う)です。

[#29756] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/03

MoonWolfです。

[#29759] Re: cgi.rbのDoS脆弱性について — "U.Nakamura" <usa@...> 2006/11/03

こんにちは、なかむら(う)です。

[#29780] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/04

MoonWolfです。

[#29784] Re: cgi.rbのDoS脆弱性について — "U.Nakamura" <usa@...> 2006/11/04

こんにちは、なかむら(う)です。

[#29786] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/04

MoonWolfです。

[#29791] Re: cgi.rbのDoS脆弱性について — Yukihiro Matsumoto <matz@...> 2006/11/04

まつもと ゆきひろです

[#29811] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/05

MoonWolfです。

[#29818] Re: cgi.rbのDoS脆弱性について — Yukihiro Matsumoto <matz@...> 2006/11/05

まつもと ゆきひろです

[#29826] Re: cgi.rbのDoS脆弱性について — MoonWolf <moonwolf@...> 2006/11/05

MoonWolfです。

[#29761] Re: cgi.rbのDoS脆弱性について — 植田 裕之 <ueda@...> 2006/11/03

植田と申します。

[#29764] Re: cgi.rbのDoS脆弱性について — Yukihiro Matsumoto <matz@...> 2006/11/03

まつもと ゆきひろです

[ruby-dev:29638] Re: Module.new

From: Nobuyoshi Nakada <nobu@...>
Date: 2006-10-05 15:59:44 UTC
List: ruby-dev #29638
なかだです。

At Thu, 5 Oct 2006 18:09:18 +0900,
WATANABE Hirofumi wrote in [ruby-dev:29637]:
> 1.9のModule.newのブロック引数がなぜかnilになってしまいます。
> 
> % ruby-1.9 -e 'Module.new{|mod| p mod}'
> nil

こっちはまだよく見てないんですが

> それはそれとして、make minirubyだけでなく少なくともmakeでき
> てからコミットしてください。

こっちはこんなとこでしょうか。


Index: parse.y
===================================================================
RCS file: /pub/cvs/ruby/src/ruby/parse.y,v
retrieving revision 1.464
diff -U 2 -p -u -r1.464 parse.y
--- parse.y	4 Oct 2006 07:17:16 -0000	1.464
+++ parse.y	5 Oct 2006 15:52:43 -0000
@@ -541,5 +541,5 @@ static void ripper_compile_error(struct 
 %type <node> assoc_list assocs assoc undef_list backref string_dvar
 %type <node> for_var block_param opt_block_param block_param_def block_param0
-%type <node> block_param1 bparam_post
+%type <node> block_param1 bparam_post block_mparam0 block_mparam
 %type <node> opt_bv_decl bv_decls bv_decl lambda f_larglist lambda_body
 %type <node> brace_block cmd_brace_block do_block lhs none fitem
@@ -2859,8 +2859,8 @@ for_var 	: lhs
 
 block_param1	: bv_decl
-		| tLPAREN block_param rparen
+		| tLPAREN block_mparam rparen
 		    {
 		    /*%%%*/
-			$$ = NEW_MASGN(NEW_LIST($2), 0);
+			$$ = $2;
 		    /*%
 			$$ = dispatch1(mlhs_paren, $2);
@@ -2909,16 +2909,36 @@ block_param	: block_param0
 		    {
 		    /*%%%*/
-                        if ($1->nd_alen == 1) {
-                            $$ = $1->nd_head;
-                            rb_gc_force_recycle((VALUE)$1);
-                        }
-                        else {
-                            $$ = NEW_MASGN($1, 0);
-                        }
+			if ($1->nd_alen == 1) {
+			    $$ = $1->nd_head;
+			    rb_gc_force_recycle((VALUE)$1);
+			}
+			else {
+			    $$ = NEW_MASGN($1, 0);
+			}
+		    /*%
+			$$ = blockvar_new($1);
+		    %*/
+		    }
+		| block_mparam0
+		    {
+			$$ = $1;
+		    }
+		;
+
+block_mparam	: block_param0
+		    {
+		    /*%%%*/
+			$$ = NEW_MASGN($1, 0);
 		    /*%
 			$$ = blockvar_new($1);
 		    %*/
 		    }
-		| block_param0 ','
+		| block_mparam0
+		    {
+			$$ = $1;
+		    }
+		;
+
+block_mparam0	: block_param0 ','
 		    {
 		    /*%%%*/


-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread