Lucas Perlind
f5b947ea73
Fix linux
2025-05-08 17:45:29 +10:00
Lucas Perlind
9f2d008a8a
Remove TEMP_ALLOCATOR_GUARD wrapper
2025-05-08 17:41:03 +10:00
Lucas Perlind
b9db1dd3e0
os2: Resolve temp allocator collisions
2025-05-08 17:41:01 +10:00
Laytan
7c1a9f1e7a
Merge pull request #5127 from laytan/fix-process-windows-handles-handling
...
Fix process windows handles handling
2025-05-06 22:31:54 +02:00
laytan
9b218a2922
don't need to hang on to the null handle
2025-05-06 19:42:52 +02:00
Laytan
bf5206968a
close null_handle
2025-05-06 20:57:26 +02:00
Jeroen van Rijn
0f2a4b80ef
Proper fix for executable name on Linux.
2025-05-04 01:05:10 +02:00
Jeroen van Rijn
deededfb0a
Fix executable_path info on Linux
2025-05-04 00:21:20 +02:00
Feoramund
4e7f54c565
Decouple usage of filepath from os2
2025-03-21 19:14:15 -04:00
Feoramund
b2e3b34ce0
Fix #4890
...
`strings.to_cstring` previously would not check if the buffer could
handle the extra null byte and could lead to segmentation violations
when using the resulting string in an API expecting the terminator.
2025-02-27 18:54:38 -05:00
Roland Kovacs
f6ead2e777
os/os2: Linux _process_start() write back error on fchdir failure
2025-01-20 23:31:13 +01:00
Roland Kovacs
ac30d36206
os/os2: Properly update CWD on Linux when using _process_start()
...
The `dir_fd` argument to `execveat()` is not for setting the current working
directory. It is used to resolve relative executable paths, hence explicit
`chdir/fchdir` call is required to set CWD.
2025-01-20 22:34:49 +01:00
jason
b73275cf42
Get arm64 up to speed in os2 linux
...
Readded open flags for arm64 to sys/linux/bits.odin. Make process_start
name based instead of descriptor based to allow running of scripts. Fix
bug in heap_linux. Fix and simplify os2.remove.
2024-12-19 17:12:07 -05:00
Laytan
563ed69c28
fix deadlock when in write_errno_to_parent_and_abort state
2024-10-04 13:24:14 +02:00
Karl Zylinski
19f0127e55
Moved all packages in core, base, vendor, tests and examples to use new #+ file tag syntax.
2024-09-14 18:27:49 +02:00
Laytan Laats
a0fe6da10b
os2: propogate errors from execv functions to parent
2024-08-25 18:01:33 +02:00
Laytan Laats
a66520ba57
os2: process API for Darwin and most of it for BSDs
2024-08-22 23:07:24 +02:00
gingerBill
40b8150a23
Minor clean ups
2024-08-16 12:47:23 +01:00
jason
07a9c69714
update core:filepath's clean, join and split_list to return optional Allocator_Errors
2024-08-16 01:48:27 -04:00
jason
0f052dbde7
os2/process_linux: improve error handling, use pidfd where possible, remove usage of fmt
2024-08-14 00:45:25 -04:00
jason
a52f7c129f
stop trying to handle child pipe read errors in process_start
2024-08-10 09:13:07 -04:00
jason
e54d6e5a11
Ignore process_open errors in process_start. This enforces a contract
...
with the user that any process returned without error must eventually be
waited on.
2024-08-10 09:03:34 -04:00
jason
f7a73b9555
fix error handling; close read end of the child pipe instead of the write end twice
2024-08-10 08:55:40 -04:00
jason
baacc512e3
fix child pipe in process_start
2024-08-09 15:21:11 -04:00
jason
c4d43bbab0
os2 linux process_wait rework; add Sig_Child_Code to sys/linux bits
2024-08-09 09:16:44 -04:00
jason
c3ba8fbd09
add child pipe for reporting post-fork errors
2024-08-08 08:56:29 -04:00
jason
c691c7dc68
point stdin, stdout, stderr to /dev/null if unused in os2.process_start
2024-08-04 01:47:10 -04:00
jason
2a7db08c20
Remove returned bool from access and faccessat in sys/linux.
...
Switch to using AT_EMPTY_PATH to execve with file descriptors.
2024-08-04 00:59:40 -04:00
jason
2b89829b52
minor edits in process_linux.odin
2024-08-03 18:08:00 -04:00
jason
38b96a7981
change child error behavior to trap instead of exit
2024-08-03 17:50:47 -04:00
jason
c7eb2ae6bb
use sys/linux dirent instead of manual iteration
2024-07-30 10:19:09 -04:00
jason
278a63caaa
remove pidfd availability caching
2024-07-30 09:28:40 -04:00
jason
a03dffcd1a
improve error handling; do not report errors from failed execve
2024-07-30 08:45:53 -04:00
jason
a5fa93e06d
remove ctprintf; use fmt.caprintf; fix pipe_linux that I broke.
2024-07-24 10:23:23 -04:00
jason
95a8a4e7f0
typo - inverted logic
2024-07-24 10:12:16 -04:00
jason
ecdd3887b2
fix process_info assumptions
2024-07-24 10:09:50 -04:00
jason
16bdc6d240
use more iterators; global "has pidfd open" state is now thread-safe
2024-07-24 08:43:22 -04:00
jason
0455e4b60f
remove unused constants; fix comment
2024-07-23 19:48:18 -04:00
jason
82deaa59ad
os2 linux: fix order of operations bug in _open; fix process_info routine
2024-07-23 17:50:30 -04:00
jason
3c7d1f35db
os2 process implementation for linux
2024-07-23 16:50:00 -04:00
gingerBill
24f9e2bbeb
Begin mocking out the linux stuff on os2
2024-07-23 16:06:14 +01:00