Alexandre Julliard pushed to branch master at wine / wine
Commits: 0e3ee215 by Tim Clem at 2025-08-26T21:28:30+02:00 ntdll: Initialize return value in fork_and_exec.
Otherwise, if the exec succeeds, the later read() will not actually read anything (EOF since the other end of the pipe is closed), and we'll returned the uninitialized value of `status`.
This was preventing NtCreateUserProcess for a Unix process from returning successfully, depending on the state of the stack, even if the fork/exec suceeded.
- - - - - b8664060 by Tim Clem at 2025-08-26T21:28:30+02:00 ntdll: Zero the process and thread handles when creating a Unix process.
Otherwise we will return success while potentially leaving them with garbage values, which the caller is likely to close.
- - - - - 32ab237d by Tim Clem at 2025-08-26T21:28:30+02:00 kernelbase: Zero the RTL_USER_PROCESS_PARAMETERS in CreateProcessInternalW.
If we end up creating a Unix process, not all of the values in this structure will (/can) be populated, and thus may be garbage.
- - - - -
2 changed files:
- dlls/kernelbase/process.c - dlls/ntdll/unix/process.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/e40f6a2807783f0167ced24a91a486...