mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* eval.c (rb_thread_cleanup): should not modify the global
variable curr_thread. * re.c (rb_reg_initialize_m): frozen check should be moved here from rb_reg_initialize(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@2732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
c704e3655b
commit
01b6c01cb6
3 changed files with 19 additions and 8 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,8 @@
|
|||
Wed Aug 21 16:43:19 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||
|
||||
* eval.c (rb_thread_cleanup): should not modify the global
|
||||
variable curr_thread.
|
||||
|
||||
Tue Aug 20 19:39:03 2002 WATANABE Hirofumi <eban@ruby-lang.org>
|
||||
|
||||
* file.c (rb_file_s_expand_path): accept drive letter on Cygwin.
|
||||
|
@ -17,6 +22,11 @@ Mon Aug 19 19:01:55 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
|
|||
* misc/inf-ruby.el (ruby-send-terminator): added to make unique
|
||||
terminator.
|
||||
|
||||
Mon Aug 19 17:08:19 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||
|
||||
* re.c (rb_reg_initialize_m): frozen check should be moved here
|
||||
from rb_reg_initialize().
|
||||
|
||||
Mon Aug 19 15:38:44 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||
|
||||
* array.c (sort_2): comparison should be done as signed long.
|
||||
|
|
11
eval.c
11
eval.c
|
@ -8627,13 +8627,14 @@ rb_thread_wait_other_threads()
|
|||
static void
|
||||
rb_thread_cleanup()
|
||||
{
|
||||
rb_thread_t th;
|
||||
rb_thread_t curr, th;
|
||||
|
||||
while (curr_thread->status == THREAD_KILLED) {
|
||||
curr_thread = curr_thread->prev;
|
||||
curr = curr_thread;
|
||||
while (curr->status == THREAD_KILLED) {
|
||||
curr = curr_thread->prev;
|
||||
}
|
||||
|
||||
FOREACH_THREAD(th) {
|
||||
FOREACH_THREAD_FROM(curr, th) {
|
||||
if (th->status != THREAD_KILLED) {
|
||||
rb_thread_ready(th);
|
||||
th->gid = 0;
|
||||
|
@ -8643,7 +8644,7 @@ rb_thread_cleanup()
|
|||
}
|
||||
}
|
||||
}
|
||||
END_FOREACH(th);
|
||||
END_FOREACH_FROM(curr, th);
|
||||
}
|
||||
|
||||
int rb_thread_critical;
|
||||
|
|
6
re.c
6
re.c
|
@ -833,9 +833,6 @@ rb_reg_initialize(obj, s, len, options)
|
|||
{
|
||||
struct RRegexp *re = RREGEXP(obj);
|
||||
|
||||
if (OBJ_FROZEN(obj)) {
|
||||
rb_error_frozen("Regexp");
|
||||
}
|
||||
if (re->ptr) re_free_pattern(re->ptr);
|
||||
if (re->str) free(re->str);
|
||||
re->ptr = 0;
|
||||
|
@ -1023,6 +1020,9 @@ rb_reg_initialize_m(argc, argv, self)
|
|||
}
|
||||
}
|
||||
|
||||
if (OBJ_FROZEN(self)) {
|
||||
rb_error_frozen("Regexp");
|
||||
}
|
||||
src = argv[0];
|
||||
if (TYPE(src) == T_REGEXP) {
|
||||
rb_reg_check(src);
|
||||
|
|
Loading…
Add table
Reference in a new issue