From 4e34ce74701f8bc86884c34c95cee71b5cf1fe6e Mon Sep 17 00:00:00 2001 From: Li Jie Date: Fri, 14 Feb 2025 19:25:06 +0800 Subject: [PATCH] runtime: fix incorrect function signature --- .../lib/internal/syscall/unix/fcntl_unix.go | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/runtime/internal/lib/internal/syscall/unix/fcntl_unix.go b/runtime/internal/lib/internal/syscall/unix/fcntl_unix.go index 96518556..93c768d9 100644 --- a/runtime/internal/lib/internal/syscall/unix/fcntl_unix.go +++ b/runtime/internal/lib/internal/syscall/unix/fcntl_unix.go @@ -11,11 +11,19 @@ const ( LLGoFiles = "_unix/fcntl_unix.c" ) -//go:linkname fcntl C.llgo_fcntl2 -func fcntl(fd int32, cmd int32, arg int32) (int32, int32) +//go:linkname llgo_fcntl2 C.llgo_fcntl2 +func llgo_fcntl2(fd int32, cmd int32, arg int32) (int32, int32) func Fcntl(fd int, cmd int, arg int) (int, error) { - val, errno := fcntl(int32(fd), int32(cmd), int32(arg)) + val, errno := llgo_fcntl2(int32(fd), int32(cmd), int32(arg)) + if val == -1 { + return int(val), syscall.Errno(errno) + } + return int(val), nil +} + +func fcntl(fd int, cmd int, arg int) (int, error) { + val, errno := llgo_fcntl2(int32(fd), int32(cmd), int32(arg)) if val == -1 { return int(val), syscall.Errno(errno) }