diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-10-14 00:06:42 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-10-14 00:06:42 +0000 |
commit | e53e556bd5a772ef938963d70a9f2a57f4e2969b (patch) | |
tree | a149ffef71c9d20d6eff4b71759a5925894dd8e5 | |
parent | 72838c28bd2690693f0e326eee595d54aba6459c (diff) | |
download | ruby-e53e556bd5a772ef938963d70a9f2a57f4e2969b.tar.gz |
* eval.c (ruby_run_node): need to call ruby_cleaup() always even
if any error occurred so far.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | eval.c | 5 |
2 files changed, 9 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Wed Oct 14 09:06:38 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * eval.c (ruby_run_node): need to call ruby_cleaup() always even + if any error occurred so far. + Wed Oct 14 08:08:12 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca> * proc.c (mnew): Method#new checks for respond_to_missing? with @@ -236,7 +236,10 @@ int ruby_run_node(void *n) { int status; - if (!ruby_executable_node(n, &status)) return status; + if (!ruby_executable_node(n, &status)) { + ruby_cleanup(0); + return status; + } return ruby_cleanup(ruby_exec_node(n)); } |