summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-03-24 18:02:12 +0200
committerPaul Buetow <paul@buetow.org>2025-03-24 18:02:12 +0200
commit375d092f4240587c7aae8dab40b2b488633c151c (patch)
tree6377acd261d317099ed5c7ddcbb115cae74a5d3a /internal
parentb1d77d2d891f04b710d610b47388e431fc519a07 (diff)
more on this
Diffstat (limited to 'internal')
-rw-r--r--internal/eventloop.go6
1 files changed, 3 insertions, 3 deletions
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: