* eval_load.c (rb_require_safe): should restore safe level.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2007-02-21 00:14:07 +00:00
Родитель 975ce3add3
Коммит e3b0b6d5fe
3 изменённых файлов: 15 добавлений и 3 удалений

Просмотреть файл

@ -1,3 +1,7 @@
Wed Feb 21 09:14:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_load.c (rb_require_safe): should restore safe level.
Tue Feb 20 21:19:29 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (installed_code_page_proc,

Просмотреть файл

@ -370,9 +370,15 @@ rb_require_safe(VALUE fname, int safe)
volatile VALUE errinfo = GET_THREAD()->errinfo;
rb_thread_t *th = GET_THREAD();
int state;
struct {
NODE *node;
int safe;
} volatile saved;
char *volatile ftptr = 0;
PUSH_TAG(PROT_NONE);
saved.node = ruby_current_node;
saved.safe = rb_safe_level();
if ((state = EXEC_TAG()) == 0) {
VALUE path;
long handle;
@ -422,6 +428,8 @@ rb_require_safe(VALUE fname, int safe)
free(ftptr);
}
}
ruby_current_node = saved.node;
rb_set_safe_level_force(saved.safe);
if (state) {
JUMP_TAG(state);
}

Просмотреть файл

@ -1,7 +1,7 @@
#define RUBY_VERSION "1.9.0"
#define RUBY_RELEASE_DATE "2007-02-20"
#define RUBY_RELEASE_DATE "2007-02-21"
#define RUBY_VERSION_CODE 190
#define RUBY_RELEASE_CODE 20070220
#define RUBY_RELEASE_CODE 20070221
#define RUBY_PATCHLEVEL 0
#define RUBY_VERSION_MAJOR 1
@ -9,7 +9,7 @@
#define RUBY_VERSION_TEENY 0
#define RUBY_RELEASE_YEAR 2007
#define RUBY_RELEASE_MONTH 2
#define RUBY_RELEASE_DAY 20
#define RUBY_RELEASE_DAY 21
RUBY_EXTERN const char ruby_version[];
RUBY_EXTERN const char ruby_release_date[];