From 375d092f4240587c7aae8dab40b2b488633c151c Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Mon, 24 Mar 2025 18:02:12 +0200 Subject: more on this --- internal/eventloop.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'internal/eventloop.go') diff --git a/internal/eventloop.go b/internal/eventloop.go index 7d13839..90eaa7e 100644 --- a/internal/eventloop.go +++ b/internal/eventloop.go @@ -275,13 +275,13 @@ func (e *eventLoop) syscallExit(exitEv event.Event, ch chan<- *event.Pair) { ev.File = fdFile e.files[fd] = fdFile case syscall.F_DUPFD: - // TODO: Re-read dup(2), maybe they don't share the same open flags? newFd := int32(retEvent.Ret) e.files[newFd] = fdFile.Dup(newFd) case syscall.F_DUPFD_CLOEXEC: newFd := int32(retEvent.Ret) - e.files[newFd] = fdFile.Dup(newFd) // Also set O_CLOEXEC - fmt.Println("TODO: F_DUPFD_CLOEXEC with fcntl not yet fully implememented") + duppedFd := fdFile.Dup(newFd) + *duppedFd.Flags |= syscall.O_CLOEXEC + e.files[newFd] = duppedFd } default: -- cgit v1.2.3