diff --git a/ChangeLog b/ChangeLog index 4d81330115..11fef07e83 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,4 @@ -Mon May 16 22:40:43 2005 Nobuyoshi Nakada +Mon May 16 22:42:52 2005 Nobuyoshi Nakada * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t to get rid of redefinition warnings on mingw. @@ -9,6 +9,8 @@ Mon May 16 22:40:43 2005 Nobuyoshi Nakada * parse.y (pragma_encoding): add prototype to suppress false warning by VC. + * process.c (proc_spawn_v): use rb_w32_aspawn on Win32. + Mon May 16 03:29:01 2005 Hirokazu Yamamoto * win32/win32.{h,c}: define rb_{p,g,u}id_t. diff --git a/process.c b/process.c index 17de5db157..faa39d7a22 100644 --- a/process.c +++ b/process.c @@ -1095,16 +1095,14 @@ rb_proc_exec(str) #endif #if !defined(HAVE_FORK) && defined(HAVE_SPAWNV) +#if defined(_WIN32) +#define proc_spawn_v(argv, prog) rb_w32_aspawn(P_NOWAIT, prog, argv) +#else static int proc_spawn_v(argv, prog) char **argv; char *prog; { -#if defined(_WIN32) - char *cmd = ALLOCA_N(char, rb_w32_argv_size(argv)); - if (!prog) prog = argv[0]; - return rb_w32_spawn(P_NOWAIT, rb_w32_join_argv(cmd, argv), prog); -#else char *extension; int status; @@ -1144,8 +1142,8 @@ proc_spawn_v(argv, prog) last_status_set(status == -1 ? 127 : status, 0); after_exec(); return status; -#endif } +#endif static int proc_spawn_n(argc, argv, prog)