mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* eval.c (rb_thread_start_0): forget to free some memory chunks.
[ruby-core:03611] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ed4de45783
commit
c579593b41
2 changed files with 5 additions and 7 deletions
|
@ -1,5 +1,8 @@
|
||||||
Fri Oct 29 10:00:30 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
|
Fri Oct 29 10:00:30 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
|
* eval.c (rb_thread_start_0): forget to free some memory chunks.
|
||||||
|
[ruby-core:03611]
|
||||||
|
|
||||||
* eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
|
* eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
|
||||||
should be wrapped by PUSH_TAG/POP_TAG(). [ruby-dev:24627]
|
should be wrapped by PUSH_TAG/POP_TAG(). [ruby-dev:24627]
|
||||||
|
|
||||||
|
|
9
eval.c
9
eval.c
|
@ -11385,13 +11385,8 @@ rb_thread_start_0(fn, arg, th)
|
||||||
if (th == main_thread) ruby_stop(state);
|
if (th == main_thread) ruby_stop(state);
|
||||||
rb_thread_remove(th);
|
rb_thread_remove(th);
|
||||||
|
|
||||||
for (block = saved_block; block;) {
|
if (saved_block) {
|
||||||
struct BLOCK *tmp = block;
|
blk_free(saved_block);
|
||||||
|
|
||||||
if (tmp->frame.argc > 0)
|
|
||||||
free(tmp->frame.argv);
|
|
||||||
block = tmp->prev;
|
|
||||||
free((void*)tmp);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state && status != THREAD_TO_KILL && !NIL_P(ruby_errinfo)) {
|
if (state && status != THREAD_TO_KILL && !NIL_P(ruby_errinfo)) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue