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

* eval.c (rb_thread_initialize): Thread objects cannot be initialized

again.  fixed: [ruby-core:04067]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2005-01-05 03:50:04 +00:00
parent 525c8f80b2
commit 23409989ed
2 changed files with 17 additions and 1 deletions

View file

@ -1,3 +1,8 @@
Wed Jan 5 12:49:39 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_initialize): Thread objects cannot be initialized
again. fixed: [ruby-core:04067]
Wed Jan 5 10:48:16 2005 NAKAMURA Usaku <usa@ruby-lang.org>
* dir.c (dir_s_mkdir): win32 special processing doesn't need any

13
eval.c
View file

@ -11567,10 +11567,21 @@ static VALUE
rb_thread_initialize(thread, args)
VALUE thread, args;
{
rb_thread_t th;
if (!rb_block_given_p()) {
rb_raise(rb_eThreadError, "must be called with a block");
}
return rb_thread_start_0(rb_thread_yield, args, rb_thread_check(thread));
th = rb_thread_check(thread);
if (th->stk_max) {
NODE *node = th->node;
if (!node) {
rb_raise(rb_eThreadError, "already initialized thread");
}
rb_raise(rb_eThreadError, "already initialized thread - %s:%d",
node->nd_file, nd_line(node));
}
return rb_thread_start_0(rb_thread_yield, args, th);
}