mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* eval.c (ruby_finalize): turn off ruby_debug flag before calling
at_exit procs and finalizers. (ruby-bugs-ja:PR473) * ext/tcltklib/tcltklib.c (lib_mainloop_core): OK to block if there's no other thread. (ruby-bugs:PR#861) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
228604473d
commit
cec20793cb
4 changed files with 12 additions and 5 deletions
|
@ -3,6 +3,14 @@ Fri May 23 15:16:16 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
|
|||
* pack.c (pack_unpack): sign-extend if sizeof long is bigger than
|
||||
32. (ruby-bugs-ja:PR#472)
|
||||
|
||||
Fri May 23 14:19:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||
|
||||
* eval.c (ruby_finalize): turn off ruby_debug flag before calling
|
||||
at_exit procs and finalizers. (ruby-bugs-ja:PR473)
|
||||
|
||||
* ext/tcltklib/tcltklib.c (lib_mainloop_core): OK to block if
|
||||
there's no other thread. (ruby-bugs:PR#861)
|
||||
|
||||
Thu May 22 18:07:46 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
|
||||
|
||||
* lib/token.c: single- and double-quoted root-level fix.
|
||||
|
|
1
eval.c
1
eval.c
|
@ -1309,6 +1309,7 @@ ruby_finalize()
|
|||
{
|
||||
int state;
|
||||
|
||||
ruby_debug = Qfalse;
|
||||
PUSH_TAG(PROT_NONE);
|
||||
if ((state = EXEC_TAG()) == 0) {
|
||||
rb_trap_exit();
|
||||
|
|
|
@ -58,7 +58,6 @@ struct invoke_queue {
|
|||
VALUE thread;
|
||||
};
|
||||
|
||||
static VALUE main_thread;
|
||||
static VALUE eventloop_thread;
|
||||
static VALUE watchdog_thread;
|
||||
Tcl_Interp *current_interp;
|
||||
|
@ -151,7 +150,7 @@ set_eventloop_weight(self, loop_max, no_event)
|
|||
int no_ev = NUM2INT(no_event);
|
||||
|
||||
if (lpmax <= 0 || no_ev <= 0) {
|
||||
rb_raise(rb_eArgError, "weight parameters must be plus number");
|
||||
rb_raise(rb_eArgError, "weight parameters must be positive numbers");
|
||||
}
|
||||
|
||||
event_loop_max = lpmax;
|
||||
|
@ -185,7 +184,7 @@ lib_mainloop_core(check_root_widget)
|
|||
for(;;) {
|
||||
tick_counter = 0;
|
||||
while(tick_counter < event_loop_max) {
|
||||
if (Tcl_DoOneEvent(TCL_ALL_EVENTS | TCL_DONT_WAIT)) {
|
||||
if (Tcl_DoOneEvent(TCL_ALL_EVENTS | (rb_thread_alone() ? 0 : TCL_DONT_WAIT))) {
|
||||
tick_counter++;
|
||||
} else {
|
||||
tick_counter += no_event_tick;
|
||||
|
@ -886,7 +885,6 @@ Init_tcltklib()
|
|||
rb_define_method(ip, "get_eventloop_weight", get_eventloop_weight, 0);
|
||||
rb_define_method(ip, "restart", lib_restart, 0);
|
||||
|
||||
main_thread = rb_thread_current();
|
||||
eventloop_thread = 0;
|
||||
watchdog_thread = 0;
|
||||
|
||||
|
|
|
@ -354,7 +354,7 @@ module TkComm
|
|||
})
|
||||
id + " " + args
|
||||
else
|
||||
id = install_cmd(proc{|arg|
|
||||
id = install_cmd(proc{|*arg|
|
||||
TkUtil.eval_cmd cmd, Event.new(*arg)
|
||||
})
|
||||
id + ' %# %a %b %c %d %f %h %k %m %o %p %s %t %w %x %y' +
|
||||
|
|
Loading…
Reference in a new issue