ruby-cvs:18242
From: (why) <why ruby-lang.org>
Date: Sun, 24 Sep 2006 06:29:53 +0900
Subject: [ruby-cvs:18242] ruby, ruby: * eval.c (rb_thread_save_context, rb_thread_restore_context):
why Sun, 24 Sep 2006 06:29:53 +0900
Modified files:
ruby:
version.h
ruby:
ChangeLog eval.c node.h ruby.h
Log:
* eval.c (rb_thread_save_context, rb_thread_restore_context):
sandbox hook to save and restore sandbox state.
* eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
* eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
to circumvent ensure, in order to prevent endless loops.
contributed by MenTaLguY. [ruby-core:08768]
* eval.c (rb_thread_kill): fix Thread#kill docs, which returns
the thread object in all cases.
* node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
with the thread flags. used by the sandbox extension.
* ruby.h: extern rb_eThreadError, so sandbox can swap it.
Revision Changes Path
1.1545 +3 -3 ruby/version.h
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/version.h?cvsroot=src&r1=1.1544&r2=1.1545
1.5419 +19 -0 ruby/ChangeLog
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ChangeLog?cvsroot=src&r1=1.5418&r2=1.5419
1.947 +85 -105 ruby/eval.c
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/eval.c?cvsroot=src&r1=1.946&r2=1.947
1.78 +95 -2 ruby/node.h
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/node.h?cvsroot=src&r1=1.77&r2=1.78
1.153 +2 -1 ruby/ruby.h
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ruby.h?cvsroot=src&r1=1.152&r2=1.153