[#29374] nil.to_s — Shugo Maeda <shugo@...>

前田です。

59 messages 2006/09/01
[#29375] Re: nil.to_s — "U.Nakamura" <usa@...> 2006/09/01

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

[#29380] Re: nil.to_s — Yukihiro Matsumoto <matz@...> 2006/09/01

まつもと ゆきひろです

[#29387] Re: nil.to_s — Shugo Maeda <shugo@...> 2006/09/01

前田です。

[#29390] Re: nil.to_s — Yukihiro Matsumoto <matz@...> 2006/09/01

まつもと ゆきひろです

[#29398] Re: nil.to_s — "NARUSE, Yui" <naruse@...> 2006/09/01

成瀬です。

[#29400] Re: nil.to_s — Yukihiro Matsumoto <matz@...> 2006/09/01

まつもと ゆきひろです

[#29491] symbol and string — Tanaka Akira <akr@...>

open-uri で :proxy=>nil という指定を行うと、以下のようにエラーになります。

33 messages 2006/09/05
[#29499] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/05

まつもと ゆきひろです

[#29500] Re: symbol and string — Tanaka Akira <akr@...> 2006/09/05

In article <1157470154.047826.13379.nullmailer@x31.priv.netlab.jp>,

[#29503] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/06

まつもと ゆきひろです

[#29504] Re: symbol and string — Tanaka Akira <akr@...> 2006/09/06

In article <1157505538.340126.8472.nullmailer@x31.priv.netlab.jp>,

[#29507] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/06

まつもと ゆきひろです

[#29512] Re: symbol and string — keiju@... (石塚圭樹) 2006/09/06

けいじゅ@いしつかです.

[#29529] Re: symbol and string — SASADA Koichi <ko1@...> 2006/09/08

 ささだです。

[#29530] Re: symbol and string — Yukihiro Matsumoto <matz@...> 2006/09/08

まつもと ゆきひろです

[ruby-dev:29569] decrease "stack level too deep" in Windows

From: "U.Nakamura" <usa@...>
Date: 2006-09-13 15:20:05 UTC
List: ruby-dev #29569
こんにちは、なかむら(う)です。

Windowsなプラットフォームで、実際に使えるスタックを十分使わな
いうちにstack level too deepになってしまうという問題があった
のですが、解決するパッチを作ってみました。

このパッチを適応する前で、
  ruby -e "def hoge(n); p n; hoge(n + 1); end; hoge(0)"
というワンライナーでは715段目でstack level topp deepだったの
ですが、このパッチ適応後で9193段まで行けるようになります。

Windowsにしか影響ないはずなんですが、入れてもいいでしょうか?

Index: gc.c
===================================================================
RCS file: /home/cvs/ruby/gc.c,v
retrieving revision 1.243
diff -u -1 -p -r1.243 gc.c
--- gc.c	7 Aug 2006 03:37:46 -0000	1.243
+++ gc.c	13 Sep 2006 15:14:51 -0000
@@ -472,3 +472,3 @@ unsigned int _stacksize = 262144;
 # undef HAVE_GETRLIMIT
-#elif defined(HAVE_GETRLIMIT)
+#elif defined(HAVE_GETRLIMIT) || defined(_WIN32)
 static unsigned int STACK_LEVEL_MAX = 655300;
@@ -1540,2 +1540,15 @@ void ruby_init_stack(VALUE *addr
     }
+#elif defined _WIN32
+    {
+	MEMORY_BASIC_INFORMATION mi;
+	DWORD size;
+	DWORD space;
+
+	if (VirtualQuery(&mi, &mi, sizeof(mi))) {
+	    size = (char *)mi.BaseAddress - (char *)mi.AllocationBase;
+	    space = size / 5;
+	    if (space > 1024*1024) space = 1024*1024;
+	    STACK_LEVEL_MAX = (size - space) / sizeof(VALUE);
+	}
+    }
 #endif

それでは。
-- 
U.Nakamura <usa@garbagecollect.jp>


In This Thread

Prev Next