summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog11
-rw-r--r--eval.c4
2 files changed, 11 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 8afa71c01a..558e5c5e30 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Sep 13 21:47:17 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * eval.c (BEGIN_CALLARGS): pop halfly pushed status.
+ fixed: [ruby-dev:26881]
+
Tue Sep 13 16:26:45 2005 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: backported from trunk, rev 1.128.
@@ -26,9 +31,9 @@ Tue Sep 13 12:33:05 2005 <why@ruby-lang.org>
continue support of Object#to_yaml_type.
* ext/syck/rubyext.c: new emitter code. yaml_new and yaml_initialize
- get called, should they be present. consolidated all the diaspora of internal
- node types into the family below YAML::Syck::Node -- Map,
- Seq, Scalar -- all of whom are SyckNode structs pointing to
+ get called, should they be present. consolidated all the diaspora of internal
+ node types into the family below YAML::Syck::Node -- Map,
+ Seq, Scalar -- all of whom are SyckNode structs pointing to
Ruby data. moved Object#yaml_new into the node_import and made it the
default behavior. the target_class is always called wih yaml_new, prepended
a parameter, which is the klass. loaded nodes through GenericResolver show their style.
diff --git a/eval.c b/eval.c
index ebb91e5cba..ee73317c09 100644
--- a/eval.c
+++ b/eval.c
@@ -2201,8 +2201,10 @@ copy_node_scope(node, rval)
#define BEGIN_CALLARGS do {\
struct BLOCK *tmp_block = ruby_block;\
int tmp_iter = ruby_iter->iter;\
- if (tmp_iter == ITER_PRE) {\
+ switch (tmp_iter) {\
+ case ITER_PRE:\
ruby_block = ruby_block->outer;\
+ case ITER_PAS:\
tmp_iter = ITER_NOT;\
}\
PUSH_ITER(tmp_iter)