aboutsummaryrefslogtreecommitdiff
path: root/core/sys/linux
diff options
context:
space:
mode:
authorPucklaJ <jonaas.pucher000000@gmail.com>2024-04-28 12:00:40 +0200
committerPucklaJ <jonaas.pucher000000@gmail.com>2024-04-28 12:00:40 +0200
commit37b026cb9bdd29aa657a54b76d2595bef40ff8c8 (patch)
treea18fa4db06bb945a49606a78056169026520a6b7 /core/sys/linux
parentd1a205e2cfb44df31801201fc8818e02527b45dc (diff)
[sys/linux] Directly call syscall in execve on arm64
Diffstat (limited to 'core/sys/linux')
-rw-r--r--core/sys/linux/sys.odin3
1 files changed, 2 insertions, 1 deletions
diff --git a/core/sys/linux/sys.odin b/core/sys/linux/sys.odin
index 57827d45c..887feb49d 100644
--- a/core/sys/linux/sys.odin
+++ b/core/sys/linux/sys.odin
@@ -765,7 +765,8 @@ execve :: proc "contextless" (name: cstring, argv: [^]cstring, envp: [^]cstring)
ret := syscall(SYS_execve, cast(rawptr) name, cast(rawptr) argv, cast(rawptr) envp)
return Errno(-ret)
} else {
- return execveat(AT_FDCWD, name, argv, envp, nil)
+ ret := syscall(SYS_execveat, AT_FDCWD, cast(rawptr) name, cast(rawptr) argv, cast(rawptr) envp, i32(0))
+ return Errno(-ret)
}
}