diff options
| author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-07-01 06:49:17 +0000 |
|---|---|---|
| committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-07-01 06:49:17 +0000 |
| commit | b8d684d9e2cfb7e4744fa3c2c283007ce26bd7a0 (patch) | |
| tree | 62194856e948f1a7f7b9b57ea95f9c8d9ddf10fb | |
| parent | 753a22a0e0e24ddf860e719f2aea7b561e3855f7 (diff) | |
* eval.c (PUSH_ANCHOR, POP_ANCHOR, rb_thread_start_0): separated
anchors from PROT_THREAD. [ruby-core:24097]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | eval.c | 26 | ||||
| -rw-r--r-- | version.h | 8 |
3 files changed, 22 insertions, 17 deletions
@@ -1,3 +1,8 @@ +Wed Jul 1 15:49:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (PUSH_ANCHOR, POP_ANCHOR, rb_thread_start_0): separated + anchors from PROT_THREAD. [ruby-core:24097] + Sun Jun 28 05:11:03 2009 Akinori MUSHA <knu@iDaemons.org> * enum.c (enum_first): Perform negative length check before @@ -1142,11 +1142,11 @@ struct ruby_env { static void push_thread_anchor _((struct ruby_env *)); static void pop_thread_anchor _((struct ruby_env *)); -#define PUSH_THREAD_TAG() PUSH_TAG(PROT_THREAD); \ +#define PUSH_ANCHOR() PUSH_TAG(PROT_NONE); \ do { \ struct ruby_env _interp; \ push_thread_anchor(&_interp); -#define POP_THREAD_TAG() \ +#define POP_ANCHOR() \ pop_thread_anchor(&_interp); \ } while (0); \ POP_TAG() @@ -1579,7 +1579,7 @@ ruby_options(argc, argv) int state; ruby_init_stack((void*)&state); - PUSH_THREAD_TAG(); + PUSH_ANCHOR(); if ((state = EXEC_TAG()) == 0) { ruby_process_options(argc, argv); } @@ -1591,7 +1591,7 @@ ruby_options(argc, argv) tracing = 0; exit(error_handle(state)); } - POP_THREAD_TAG(); + POP_ANCHOR(); } void rb_exec_end_proc _((void)); @@ -1635,7 +1635,7 @@ ruby_cleanup(ex) errs[1] = ruby_errinfo; ruby_safe_level = 0; ruby_init_stack(&errs[STACK_UPPER(errs, 0, 1)]); - PUSH_THREAD_TAG(); + PUSH_ANCHOR(); PUSH_ITER(ITER_NOT); if ((state = EXEC_TAG()) == 0) { ruby_finalize_0(); @@ -1653,7 +1653,7 @@ ruby_cleanup(ex) ruby_errinfo = errs[1]; ex = error_handle(ex); ruby_finalize_1(); - POP_THREAD_TAG(); + POP_ANCHOR(); for (nerr = 0; nerr < sizeof(errs) / sizeof(errs[0]); ++nerr) { VALUE err = errs[nerr]; @@ -1691,7 +1691,7 @@ ruby_exec_internal() { int state; - PUSH_THREAD_TAG(); + PUSH_ANCHOR(); PUSH_ITER(ITER_NOT); /* default visibility is private at toplevel */ SCOPE_SET(SCOPE_PRIVATE); @@ -1702,7 +1702,7 @@ ruby_exec_internal() rb_thread_start_1(); } POP_ITER(); - POP_THREAD_TAG(); + POP_ANCHOR(); return state; } @@ -5596,7 +5596,7 @@ rb_protect(proc, data, state) VALUE result = Qnil; /* OK */ int status; - PUSH_THREAD_TAG(); + PUSH_ANCHOR(); cont_protect = (VALUE)rb_node_newnode(NODE_MEMO, cont_protect, 0, 0); if ((status = EXEC_TAG()) == 0) { result = (*proc)(data); @@ -5605,7 +5605,7 @@ rb_protect(proc, data, state) rb_thread_start_1(); } cont_protect = ((NODE *)cont_protect)->u1.value; - POP_THREAD_TAG(); + POP_ANCHOR(); if (state) { *state = status; } @@ -7162,14 +7162,14 @@ rb_load_protect(fname, wrap, state) { int status; - PUSH_THREAD_TAG(); + PUSH_ANCHOR(); if ((status = EXEC_TAG()) == 0) { rb_load(fname, wrap); } else if (status == TAG_THREAD) { rb_thread_start_1(); } - POP_THREAD_TAG(); + POP_ANCHOR(); if (state) *state = status; } @@ -12608,7 +12608,7 @@ rb_thread_start_0(fn, arg, th) thread_insert(th); - PUSH_TAG(PROT_NONE); + PUSH_TAG(PROT_THREAD); if ((state = EXEC_TAG()) == 0) { if (THREAD_SAVE_CONTEXT(th) == 0) { curr_thread = th; @@ -1,15 +1,15 @@ #define RUBY_VERSION "1.8.8" -#define RUBY_RELEASE_DATE "2009-06-28" +#define RUBY_RELEASE_DATE "2009-07-01" #define RUBY_VERSION_CODE 188 -#define RUBY_RELEASE_CODE 20090628 +#define RUBY_RELEASE_CODE 20090701 #define RUBY_PATCHLEVEL -1 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 8 #define RUBY_VERSION_TEENY 8 #define RUBY_RELEASE_YEAR 2009 -#define RUBY_RELEASE_MONTH 6 -#define RUBY_RELEASE_DAY 28 +#define RUBY_RELEASE_MONTH 7 +#define RUBY_RELEASE_DAY 1 #ifdef RUBY_EXTERN RUBY_EXTERN const char ruby_version[]; |
