diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-02-27 01:50:27 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-02-27 01:50:27 +0000 |
commit | 80429eed638c36baa3574704b1b567aa7acb4fa6 (patch) | |
tree | 387905f8803dc1cbf07736ac403351c38caeaeeb /process.c | |
parent | 2c3cc479a9b7d55e48d50d3c1712f28855faea12 (diff) | |
download | ruby-80429eed638c36baa3574704b1b567aa7acb4fa6.tar.gz |
* io.c, process.c, time.c, ext: use rb_sys_fail_str instead of
rb_sys_fail.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'process.c')
-rw-r--r-- | process.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -1798,6 +1798,7 @@ rb_exec_fillarg(VALUE prog, int argc, VALUE *argv, VALUE env, VALUE opthash, str e->argc = argc; e->argv = argv; e->prog = prog ? RSTRING_PTR(prog) : 0; + e->progname = prog; } VALUE @@ -1875,7 +1876,7 @@ rb_f_exec(int argc, VALUE *argv) rb_exec_err(&earg, errmsg, sizeof(errmsg)); if (errmsg[0]) rb_sys_fail(errmsg); - rb_sys_fail(earg.prog); + rb_sys_fail_str(earg.progname); return Qnil; /* dummy */ } @@ -2326,6 +2327,7 @@ rb_run_exec_options_err(const struct rb_exec_arg *e, struct rb_exec_arg *s, char s->prog = NULL; s->options = soptions = hide_obj(rb_ary_new()); s->redirect_fds = Qnil; + s->progname = Qnil; } #ifdef HAVE_SETPGID @@ -3345,8 +3347,8 @@ rb_f_spawn(int argc, VALUE *argv) pid = rb_spawn_process(&earg, rb_exec_arg_prepare(&earg, argc, argv, TRUE), errmsg, sizeof(errmsg)); if (pid == -1) { const char *prog = errmsg; - if (!prog[0] && !(prog = earg.prog) && earg.argc) { - prog = RSTRING_PTR(earg.argv[0]); + if (!prog[0]) { + rb_sys_fail_str(earg.progname); } rb_sys_fail(prog); } |