From f6ead2e777d0acd9c786880d2e5f1f635efbaeca Mon Sep 17 00:00:00 2001 From: Roland Kovacs Date: Mon, 20 Jan 2025 23:31:13 +0100 Subject: [PATCH] os/os2: Linux _process_start() write back error on fchdir failure --- core/os/os2/process_linux.odin | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/os/os2/process_linux.odin b/core/os/os2/process_linux.odin index c2979b282..09fd8c255 100644 --- a/core/os/os2/process_linux.odin +++ b/core/os/os2/process_linux.odin @@ -548,8 +548,9 @@ _process_start :: proc(desc: Process_Desc) -> (process: Process, err: Error) { write_errno_to_parent_and_abort(child_pipe_fds[WRITE], errno) } if dir_fd != linux.AT_FDCWD { - errno = linux.fchdir(dir_fd) - assert(errno == nil) + if errno = linux.fchdir(dir_fd); errno != .NONE { + write_errno_to_parent_and_abort(child_pipe_fds[WRITE], errno) + } } errno = linux.execveat(dir_fd, exe_path, &cargs[0], env)