diff options
-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)); } |