380 Commits

Author SHA1 Message Date
gingerBill fc5ef57a97 Document the rest of os2. 2025-10-31 16:00:44 +00:00
gingerBill d2e274f0fe Update documentation for os2 once more! 2025-10-31 15:51:36 +00:00
gingerBill 1329630bbc Improve documentation for the file based operations in os2 2025-10-31 15:17:54 +00:00
gingerBill b9df67f8c5 Change to Permissions bit_set from relying on octal numbering for os2 2025-10-31 14:45:53 +00:00
gingerBill 686ddbb548 use runtime.exit for os2.exit 2025-10-31 10:24:21 +00:00
gingerBill 5e528f8e97 Remove core:encoding/ini dependency in user_posix.odin 2025-10-28 13:21:35 +00:00
gingerBill 4c8f99cd36 Add #caller_location to os2.read_entire_file 2025-10-28 10:57:53 +00:00
A1029384756 7afbe23a34 [core:os/os2] zeroed n value on failed file operations 2025-10-27 12:23:47 -04:00
Kamron Bhavnagri 2995536882 Fix Linux executable path
Fixes a bug caused by an executable named identically to the directory
it is in, where then the parent of that directory is both on the path
and marked as executable
Avoid this via stat, as we can check we are working with a file which is
executable
2025-10-18 14:33:35 +11:00
samwega 9da10dece2 fix: another itoa() used in path_linux.odin had to be replaced with write_int() 2025-10-03 22:26:24 +03:00
Alex Riedl b9a09cebee fix for temp_file name prefix being deallocated before being used 2025-09-11 10:55:29 -05:00
Damian Tarnawski cdca345d74 Handle optional allocator error when appending read bytes in read_entire_file_from_file 2025-09-02 13:42:25 +02:00
gingerBill 8ff15eaf69 More contextless fixes 2025-08-08 13:02:37 +01:00
gingerBill 78290ceef3 Add contextless to another proc 2025-08-08 12:38:20 +01:00
gingerBill d3f649d244 Make get_args contextless 2025-08-08 12:25:58 +01:00
gingerBill 7642e0a0e0 Require @(init) and @(fini) to be proc "contextless" () 2025-08-08 12:10:01 +01:00
gingerBill eae43f1225 Merge branch 'master' into bill/utf16-strings 2025-08-05 15:07:06 +01:00
Jared Cone b1cda52fd6 Fixed delete-after-free in file_windows.odin 2025-08-04 19:42:23 -07:00
gingerBill 5aec40e3e0 Remove unneeded uses of intrinsics.constant_utf16_cstring 2025-08-02 12:55:05 +01:00
gingerBill c631a8eff5 os2 internals -> (c)string16 2025-08-02 12:47:03 +01:00
gingerBill bb4bc316a4 for in string16; Support string16 across core 2025-08-02 12:20:35 +01:00
Harold Brenes 219b0fe535 Replace system:System.framework imports with system:System
This makes the linker work for both macOS and iOS targets
2025-07-13 15:45:21 -04:00
Jeroen van Rijn 73dcc39d98 Fix macOS 2025-06-16 20:22:15 +02:00
Jeroen van Rijn 6347c87b5b Add buffered get_env variants to os2 2025-06-16 20:12:27 +02:00
Jeroen van Rijn 3862555153 Replace core:posix usage in core:os/os2 2025-06-13 17:49:05 +02:00
gingerBill 87247b8bb7 Merge pull request #5286 from Feoramund/no-san-mem
Add `@(no_sanitize_memory)` with additions to `base:sanitizer`
2025-06-09 12:46:22 +01:00
Jeroen van Rijn 77f4199af6 Simplify _xdg_user_dirs_lookup 2025-06-08 14:56:41 +02:00
Jeroen van Rijn 6d7f5baaf8 Merge pull request #5295 from elyalon/dirs
Fix user dirs, add docs
2025-06-07 11:13:40 +02:00
Ely Alon deeb9e2d12 remove fmt import 2025-06-07 01:40:43 +03:00
Ely Alon 17746db555 Fix user dirs, add docs 2025-06-07 01:22:30 +03:00
Jeroen van Rijn e870369c97 Merge pull request #5288 from Feoramund/strconv-append-to-write
Clarify `strconv.append_*` to `strconv.write_*`
2025-06-05 23:45:37 +02:00
Feoramund b7de15caa3 Clarify strconv.append_* to strconv.write_* 2025-06-05 16:56:00 -04:00
Jeroen van Rijn 108c8781c7 Factor out into helper. 2025-06-05 22:27:18 +02:00
Feoramund f8228a91d1 Mark some uninitialized memory as safe
Syscalls (but not C functions) are opaque to MemorySanitizer, thus some
memory addresses need to be manually marked as safe to access.
2025-06-05 16:06:44 -04:00
Jeroen van Rijn 90a1b0ec4b UAF 2025-06-05 21:45:36 +02:00
Jeroen van Rijn 2428fa37a9 tabs 2025-06-05 21:38:59 +02:00
Ely Alon a9cdb4f446 add more user dirs 2025-06-05 21:50:59 +03:00
Jeroen van Rijn a1759aa2fa Fix 2025-06-05 16:54:39 +02:00
Jeroen van Rijn 93e1c6593e Change os2.user_* on Windows to use SHGetKnownFolderPath.
Known folders can be redirected using `SHSetKnownFolderPath`, and it's a bit iffy to rely on environment variables.

This also more easily allows us to add `user_*_dir` procedures for the remaining 139 GUIDs in `known_folders.odin`, provided they have equivalents on other platforms.
2025-06-05 16:37:41 +02:00
Jeroen van Rijn da3b3a4139 Allocate return value on provided allocator 2025-06-05 15:16:35 +02:00
Laytan Laats eab3e2be22 os2: remove libc use on Linux 2025-05-20 19:48:06 +02:00
Jeroen van Rijn d7a83a7a1f Revert "os2: Don't try to translate Windows file attributes to Unix mode flags"
This reverts commit 95923c2059.
It'll be updated later.
2025-05-12 23:34:12 +02:00
Jeroen van Rijn 30388cada3 Fix os2.clean_path on Windows 2025-05-11 15:35:52 +02:00
Laytan Laats cacb9f9f54 os2: better copy_directory, and add native copy_file and copy_directory variants on MacOS 2025-05-08 19:32:30 +02:00
Lucas Perlind f5b947ea73 Fix linux 2025-05-08 17:45:29 +10:00
Lucas Perlind 14c5096b81 Improve assert information 2025-05-08 17:41:03 +10:00
Lucas Perlind 9f2d008a8a Remove TEMP_ALLOCATOR_GUARD wrapper 2025-05-08 17:41:03 +10:00
Lucas Perlind 5292a7f4f3 Fix posix 2025-05-08 17:41:03 +10:00
Lucas Perlind 1bea59ee68 Fix linux 2025-05-08 17:41:03 +10:00
Lucas Perlind 190960e103 fix -vet 2025-05-08 17:41:03 +10:00