From ddbebabd25dd8031bda5e31f061b89433c72b9e3 Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 18 Jul 2006 05:48:01 +0000 Subject: [PATCH] * process.c (rb_f_system): call rb_sys_fail(0) if rb_last_status is nil. [ruby-talk:202361] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ process.c | 1 + 2 files changed, 6 insertions(+) diff --git a/ChangeLog b/ChangeLog index 487dd3a479..ab15aa2e60 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Jul 18 14:38:40 2006 Yukihiro Matsumoto + + * process.c (rb_f_system): call rb_sys_fail(0) if rb_last_status + is nil. [ruby-talk:202361] + Tue Jul 18 14:03:02 2006 Yukihiro Matsumoto * lib/webrick/httpserver.rb (WEBrick::HTTPServer::unmount): remove diff --git a/process.c b/process.c index 5b4672b0e0..1989f017d9 100644 --- a/process.c +++ b/process.c @@ -1592,6 +1592,7 @@ rb_f_system(int argc, VALUE *argv) if (status == -1) rb_sys_fail(RSTRING(argv[0])->ptr); #if defined(HAVE_FORK) || defined(HAVE_SPAWNV) rb_syswait(status); + if (NIL_P(rb_last_status)) rb_sys_fail(0); status = NUM2INT(rb_last_status); #endif if (status == EXIT_SUCCESS) return Qtrue;