summaryrefslogtreecommitdiff
path: root/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'process.c')
-rw-r--r--process.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/process.c b/process.c
index b5be40372d..682ba259bc 100644
--- a/process.c
+++ b/process.c
@@ -2674,6 +2674,10 @@ rb_spawn_internal(int argc, VALUE *argv, int default_close_others)
else {
status = proc_spawn_n(argc, argv, prog);
}
+# if defined(_WIN32)
+ if (status == -1)
+ rb_last_status_set(0x7f << 8, 0);
+# endif
# else
if (argc) prog = rb_ary_join(rb_ary_new4(argc, argv), rb_str_new2(" "));
status = system(StringValuePtr(prog));