mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-08 00:28:49 +00:00
os2: improve absolute/full path handling for posix
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
//+private
|
||||
//+build openbsd
|
||||
package os2
|
||||
|
||||
import "base:runtime"
|
||||
|
||||
import "core:sys/posix"
|
||||
|
||||
_posix_absolute_path :: proc(fd: posix.FD, name: string, allocator: runtime.Allocator) -> (path: cstring, err: Error) {
|
||||
TEMP_ALLOCATOR_GUARD(ignore=is_temp(allocator))
|
||||
cname := temp_cstring(name)
|
||||
|
||||
buf: [posix.PATH_MAX]byte
|
||||
path = posix.realpath(cname, raw_data(buf[:]))
|
||||
if path == nil {
|
||||
err = _get_platform_error()
|
||||
return
|
||||
}
|
||||
|
||||
return clone_to_cstring(string(path), allocator)
|
||||
}
|
||||
Reference in New Issue
Block a user