summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-08-03 14:56:54 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-08-03 14:56:54 +0000
commit096f7a4c89c9f42872e96268995beed4b64af516 (patch)
treee27a5fa2c586fa8f93384f54a0169b3ab545bdc3
parentd170fe2cd0380f3e59adf25bd99ac1e560c544be (diff)
* eval.c (rb_call_super): should propagate previous block for
super call. [ruby-talk:77884] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--eval.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 844b1962d9..a852ed8860 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sun Aug 3 23:56:50 2003 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * eval.c (rb_call_super): should propagate previous block for
+ super call. [ruby-talk:77884]
+
Sun Aug 3 19:25:28 2003 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (call_trace_func): clear exception flag temporarily.
diff --git a/eval.c b/eval.c
index 1827aa213e..d7b78d9d13 100644
--- a/eval.c
+++ b/eval.c
@@ -5240,7 +5240,7 @@ rb_call_super(argc, argv)
klass = k;
}
- PUSH_ITER(rb_block_given_p()?ITER_PRE:ITER_NOT);
+ PUSH_ITER(ruby_iter->iter || rb_block_given_p() ? ITER_PRE : ITER_NOT);
result = rb_call(RCLASS(klass)->super, self, ruby_frame->orig_func, argc, argv, 3);
POP_ITER();