[#26664] refactoring tcltklib.c (deleted ip check) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
山本です。
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
[#26711] --with-static-linked-extするとrequireできないライブラリがある — IWATSUKI Hiroyuki <don@...>
岩月と申します。
なかだです。
[#26721] TkVariable.new_hash 経由だと trace が発生しない — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#26723] Fixnum演算メソッド中のcoerceの削減 — Tadashi Saito <shiba@...2.accsnet.ne.jp>
斎藤と申します。
[#26743] zsuper in a method with optional arg — "NAKAMURA, Hiroshi" <nakahiro@...>
-----BEGIN PGP SIGNED MESSAGE-----
まつもと ゆきひろです
-----BEGIN PGP SIGNED MESSAGE-----
[#26745] TkCheckbutton#variable as getter? — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
[#26753] some questions about tcltklib.c — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
永井@知能.九工大です.
山本です。
[#26764] multi-thread and logger — Nobuhiro IMAI <nov@...>
いまいです。
[#26791] Failure: test_block_passing(TestIterator) — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
まつもと ゆきひろです
[#26800] reducing PUSH_TAG in rescue, and useless exceptions — nobu@...
なかだです。
[#26808] test/nkf/test_kconv.rb — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#26817] test/socket/test_tcp.rb freeze on windows — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
こんにちは、なかむら(う)です。
山本です。
山本です。
こんにちは、なかむら(う)です。
山本です。
こんにちは、なかむら(う)です。
山本です。返信が遅れてすみません。
[#26829] cannot check EOF of pipe on windows — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
山本です。
こんにちは、なかむら(う)です。
山本です。
なかだです。
山本です。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
山本です。
[#26840] [BUG] oniguruma + utf-8 — "NAKAMURA, Hiroshi" <nakahiro@...>
-----BEGIN PGP SIGNED MESSAGE-----
[#26851] ripper for 1.8 — Tanaka Akira <akr@...17n.org>
ruby-1.8 で動かす gonzui で、ruby code の解析をしたいという要望があっ
[#26872] irb -I/ruby -Iと$LOAD_PATH — akira yamada / やまだあきら <akira@...>
Debianユーザからruby -Iとirb -Iで
なかだです。
nobuyoshi nakada wrote:
けいじゅ@いしつかです.
けいじゅ@いしつかです.
なかだです。
けいじゅ@いしつかです.
まつもと ゆきひろです
けいじゅ@いしつかです.
[#26883] top level include on load(filename, true) — Shugo Maeda <shugo@...>
前田です。
[#26897] fail on make install — KIMURA Koichi <kimura.koichi@...>
木村です。
こんにちは、なかむら(う)です。
木村です。
木村です。
木村です。
こんにちは、なかむら(う)です。
木村です。
こんにちは、なかむら(う)です。
なかだです。
山本です。
なかだです。
なかだです。
山本です。
こんにちは、なかむら(う)です。
なかだです。
まつもと ゆきひろです
山本です。
なかだです。
[#26900] multiplying empty string — nobuyoshi nakada <nobuyoshi.nakada@...>
まつもと ゆきひろです
In article <1125327516.070646.12845.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1125356798.802509.8788.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1125369966.174424.13781.nullmailer@x31.priv.netlab.jp>,
[ruby-dev:26930] Re: fail on make install
なかだです。
At Wed, 31 Aug 2005 14:32:42 +0900,
U.Nakamura wrote in [ruby-dev:26929]:
> | で、ip->prev = curr_thread->anchor のところで curr_thread が NULLなので
> | こけてます。ここを、curr_thread が NULL のときはスキップするようにすると
> |
> | > むむ。"cross-thread violation on rb_gc()" ですかね?
> |
> | で落ちるようになります。
> |
> | 情報になれば。
>
> どうもありがとうございます。
> 思ってたのの一つ手前でひっかかっちゃってましたか。
例外を捉えるのはrb_glob()に任せて、rb_glob2()はfuncが0以外を返
したら中断するという風に分けて、cmdglob()では例外を出さないとい
うことにしたらどうでしょうか。rb_glob2()の名前は変えたほうがい
いかもしれませんが。
> ruby_thid に初期値を入れといてチェックすればいいか、とか一瞬
> 思ったんですが、そもそも ruby_init() の前にGCが走っちゃ駄目か。
> 確かに根が深そうです。
dont_gcの初期値をtrueにしておいて、Init_heap()あたりでクリアす
るとか。
Index: dir.c
===================================================================
RCS file: /cvs/ruby/src/ruby/dir.c,v
retrieving revision 1.143
diff -U2 -p -r1.143 dir.c
--- dir.c 30 Aug 2005 14:49:51 -0000 1.143
+++ dir.c 31 Aug 2005 07:03:26 -0000
@@ -1151,38 +1151,5 @@ enum answer { YES, NO, UNKNOWN };
#endif
-struct glob_args {
- void (*func) _((const char *, VALUE));
- const char *c;
- VALUE v;
-};
-
-static VALUE glob_func_caller _((VALUE));
-
-static VALUE
-glob_func_caller(val)
- VALUE val;
-{
- struct glob_args *args = (struct glob_args *)val;
-
- (*args->func)(args->c, args->v);
- return Qnil;
-}
-
-static int
-glob_call_func(func, path, arg)
- void (*func) _((const char *, VALUE));
- const char *path;
- VALUE arg;
-{
- int status;
- struct glob_args args;
-
- args.func = func;
- args.c = path;
- args.v = arg;
-
- rb_protect(glob_func_caller, (VALUE)&args, &status);
- return status;
-}
+#define glob_call_func(func, path, arg) (*func)(path, arg)
static int
@@ -1195,5 +1162,5 @@ glob_helper(path, dirsep, exist, isdir,
struct glob_pattern **end;
int flags;
- void (*func) _((const char *, VALUE));
+ int (*func) _((const char *, VALUE));
VALUE arg;
{
@@ -1346,9 +1313,9 @@ glob_helper(path, dirsep, exist, isdir,
}
-static int
+int
rb_glob2(path, flags, func, arg)
const char *path;
int flags;
- void (*func) _((const char *, VALUE));
+ int (*func) _((const char *, VALUE));
VALUE arg;
{
@@ -1389,14 +1356,30 @@ struct rb_glob_args {
void (*func) _((const char*, VALUE));
VALUE arg;
+ const char *path;
};
+static VALUE glob_func_caller _((VALUE));
+
static VALUE
+glob_func_caller(val)
+ VALUE val;
+{
+ struct rb_glob_args *args = (struct rb_glob_args *)val;
+
+ (*args->func)(args->path, args->arg);
+ return Qnil;
+}
+
+static int
rb_glob_caller(path, a)
const char *path;
VALUE a;
{
+ int status;
struct rb_glob_args *args = (struct rb_glob_args *)a;
- (*args->func)(path, args->arg);
- return Qnil;
+
+ args->path = path;
+ rb_protect(glob_func_caller, (VALUE)&args, &status);
+ return status;
}
@@ -1417,5 +1400,5 @@ rb_glob(path, func, arg)
}
-static void
+static int
push_pattern(path, ary)
const char *path;
@@ -1423,4 +1406,5 @@ push_pattern(path, ary)
{
rb_ary_push(ary, rb_tainted_str_new2(path));
+ return 0;
}
Index: win32/win32.c
===================================================================
RCS file: /cvs/ruby/src/ruby/win32/win32.c,v
retrieving revision 1.164
diff -U2 -p -r1.164 win32.c
--- win32/win32.c 18 Aug 2005 02:07:28 -0000 1.164
+++ win32/win32.c 31 Aug 2005 06:53:37 -0000
@@ -1024,5 +1024,5 @@ typedef struct _NtCmdLineElement {
#define NTSTRING 0x4 // element contains a quoted string
-static void
+static int
insert(const char *path, VALUE vinfo)
{
@@ -1038,4 +1038,6 @@ insert(const char *path, VALUE vinfo)
**tail = tmpcurr;
*tail = &tmpcurr->next;
+
+ return 0;
}
@@ -1062,5 +1064,5 @@ cmdglob(NtCmdLineElement *patt, NtCmdLin
if (*p == '\\')
*p = '/';
- rb_glob(buf, insert, (VALUE)&tail);
+ rb_glob2(buf, 0, insert, (VALUE)&tail);
if (buf != buffer)
free(buf);
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦