Laytan Laats
f7d7d65bc0
fix open bindings
...
`open` specifies the `mode` argument as vararg (presumably to make it
optional). varargs actually have rules about casting, in this case the
rule that any integer arg of size <= 4 has to be casted to `i32` before
passing it.
Not doing that implicit cast makes the permissions wrong or not apply at
all.
2024-08-16 22:54:53 +02:00
Feoramund
a07878be71
Check if file open-mode is O_CREATE on Darwin before forcing chmod
...
Fixes #4087
2024-08-16 14:08:55 -04:00
gingerBill
40b8150a23
Minor clean ups
2024-08-16 12:47:23 +01:00
gingerBill
31bb3dc4f0
Merge pull request #3971 from jasonKercher/os2-process-linux
...
os2 process linux implementation
2024-08-16 12:38:27 +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
DerTee
6422e49255
fix error handling in os2.read_entire_file_from_file()
...
even when an error in file_size() happened, os2.ERROR_NONE was returned
2024-08-14 17:30:02 +02: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
Laytan Laats
e29f0a0f40
os2: dup the file descriptor before fdopendir
2024-08-14 01:45:24 +02:00
Laytan Laats
f837e35f4b
os2: fix bad free for posix file closure
2024-08-14 01:45:24 +02:00
Laytan Laats
61ee2efa35
os2: just use runtime._heap_allocator_proc instead of a copy for posix
2024-08-14 01:45:24 +02:00
Laytan Laats
e94c4e1e18
posix: remove the is_temp things that prevented use-after-frees
...
d0709a7de2
fixes those another way.
2024-08-14 01:45:24 +02:00
Laytan Laats
b07d0b38b1
os2: improve absolute/full path handling for posix
2024-08-14 01:45:23 +02:00
Laytan Laats
a73677d21a
os2: nice != priority
2024-08-14 01:44:37 +02:00
Laytan Laats
175f5b0bb1
os2: don't rely on PATH_MAX in posix read_directory implementation
2024-08-14 01:44:37 +02:00
Laytan Laats
939ba4cf08
os2: fix leak and always close directory
2024-08-14 01:44:37 +02:00
Laytan Laats
f00f68ef6f
posix/os2: fix test and add back in removed temp guard
2024-08-14 01:44:37 +02:00
Laytan Laats
de9abe1f7b
os2: skip . and .. in read dir
2024-08-14 01:44:37 +02:00
Laytan Laats
bd808f9ec6
os2: fix wiping results with temp allocator guard
2024-08-14 01:44:37 +02:00
Laytan Laats
7474db6a34
os2: fix lstat logic
2024-08-14 01:44:37 +02:00
Laytan Laats
00eb702c4a
os2: implement the iterator based read directory
2024-08-14 01:44:37 +02:00
Laytan Laats
ea5783c2ac
os2: fixes after rebasing
2024-08-14 01:44:37 +02:00
Laytan Laats
406e60f5dd
posix: revert change to os that was done for testing
2024-08-14 01:44:37 +02:00
Laytan Laats
72220a855f
posix: fix write error check
2024-08-14 01:44:37 +02:00
Laytan Laats
9e2c5acb9d
os2: fix bit checks
2024-08-14 01:44:37 +02:00
Laytan Laats
379cd6fe66
os2: cleanup
2024-08-14 01:44:37 +02:00
Laytan Laats
a4d459f651
os2: initial implementation for Darwin&BSDs, process API is only thing incomplete
2024-08-14 01:44:37 +02:00
Laytan Laats
ff0ca0bd53
os2: make config directory on darwin also ~/.config, it is the proper place
2024-08-14 01:44:37 +02:00
Laytan Laats
07b9f7d280
os2: fix read_entire_file bad logic
2024-08-14 01:44:37 +02:00
Laytan Laats
9f80191f60
os2: add default make_directory permissions
2024-08-14 01:44:37 +02:00
Laytan Laats
efe68c2e24
posix: add package
2024-08-14 01:44:35 +02:00
Laytan Laats
a4ac3cc6e8
fix os.read_dir closing the given file descriptor
2024-08-12 18:51:27 +02:00
Laytan Laats
c6a0d302b3
loop write_entire_file to write more than MAX_RW
...
Fixes #4042
2024-08-11 17:27:54 +02: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
Jeroen van Rijn
fa6f343261
Remove unused import.
2024-08-09 19:06:50 +02: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
9625798513
merge commit
2024-08-07 23:27:45 -04:00
Feoramund
3512d7c672
Move Darwin MSG_NOSIGNAL to core:os
2024-08-05 12:49:12 -04:00
gingerBill
60bc7f53d2
Comment out open_buffered
2024-08-04 17:41:48 +01:00
gingerBill
cf3c1a85ec
Remove temp parameter
2024-08-04 17:36:28 +01:00
gingerBill
046f72befd
Mock out open_buffered
2024-08-04 17:31:39 +01:00
gingerBill
f19436fb4d
Only swap if there was an arena
2024-08-04 17:17:09 +01:00
gingerBill
d0709a7de2
Allow for nested temp_allocator() calls to flip between arenas on TEMP_ALLOCATOR_GUARDs
2024-08-04 17:14:24 +01:00
gingerBill
c078b2dd1b
Add @(require_results)
2024-08-04 15:24:26 +01:00
gingerBill
bf948ab8ae
Add stubs for flush on platforms that didn't have it
2024-08-04 15:07:24 +01:00
gingerBill
fc10b781af
Update core/os/os2/process.odin
...
Co-authored-by: Laytan <laytanlaats@hotmail.com >
2024-08-04 14:47:44 +01:00
gingerBill
6a6b5061db
Update core/os/os_darwin.odin
...
Co-authored-by: Laytan <laytanlaats@hotmail.com >
2024-08-04 14:47:35 +01:00