diff --git a/process.c b/process.c index 6f3fc23..14b5d5b 100644 --- a/process.c +++ b/process.c @@ -1998,7 +1998,7 @@ rb_exec_getargs(int *argc_p, VALUE **argv_p, int accept_shell, VALUE *env_ret, V } } - if (0 < *argc_p) { + if (0 < *argc_p && !RB_TYPE_P((*argv_p)[0]), T_ARRAY) { hash = rb_check_hash_type((*argv_p)[0]); if (!NIL_P(hash)) { *env_ret = hash;