~ chicken-core (chicken-5) d922036f788f2766d6d3724bf87f1fa1c9ef146b


commit d922036f788f2766d6d3724bf87f1fa1c9ef146b
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Wed Jul 2 15:39:59 2025 +0100
Commit:     felix <felix@call-with-current-continuation.org>
CommitDate: Wed Jul 2 15:39:59 2025 +0100

    fix borked process object creation on windows

diff --git a/posixwin.scm b/posixwin.scm
index 53cb9645..6415545e 100644
--- a/posixwin.scm
+++ b/posixwin.scm
@@ -836,17 +836,16 @@ static int set_file_mtime(C_word filename, C_word atime, C_word mtime)
                     (location handle)
                     (location stdin_fd) (location stdout_fd) (location stderr_fd)
                     (+ (if stdinf 0 1) (if stdoutf 0 2) (if stderrf 0 4)))])
-            (if (integer? res)
+            (if res
               (make-process
-               res #f
-               (and stdoutf (chicken.file.posix#open-input-file*
-                             stdout_fd)) ;Parent stdin
+               handle #f
                (and stdinf (chicken.file.posix#open-output-file*
                             stdin_fd))  ;Parent stdout
-               handle
+               (and stdoutf (chicken.file.posix#open-input-file*
+                             stdout_fd)) ;Parent stdin
                (and stderrf (chicken.file.posix#open-input-file*
-                             stderr_fd)
-               #f))
+                             stderr_fd))
+               #f)
               (##sys#signal-hook/errno
                #:process-error (##sys#update-errno) loc "cannot execute process" cmdlin))))))))
 
Trap