summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--internal/eventloop.go5
-rw-r--r--internal/file/file.go7
2 files changed, 3 insertions, 9 deletions
diff --git a/internal/eventloop.go b/internal/eventloop.go
index c64d7e6..cd5ea25 100644
--- a/internal/eventloop.go
+++ b/internal/eventloop.go
@@ -301,8 +301,9 @@ func (e *eventLoop) syscallExit(exitEv event.Event, ch chan<- *event.Pair) {
e.files[newFd] = fdFile.Dup(newFd)
case syscall.F_DUPFD_CLOEXEC:
newFd := int32(retEvent.Ret)
- duppedFd := fdFile.DupAddFlags(newFd, syscall.O_CLOEXEC)
- e.files[newFd] = duppedFd
+ duppedFdFile := fdFile.Dup(newFd)
+ duppedFdFile.AddFlags(syscall.O_CLOEXEC)
+ e.files[newFd] = duppedFdFile
}
default:
diff --git a/internal/file/file.go b/internal/file/file.go
index 11d992d..6c29961 100644
--- a/internal/file/file.go
+++ b/internal/file/file.go
@@ -55,13 +55,6 @@ func (f FdFile) Dup(fd int32) FdFile {
return dupFd
}
-func (f FdFile) DupAddFlags(fd, flags int32) FdFile {
- dupFd := f
- dupFd.fd = fd
- dupFd.flags = Flags(int32(dupFd.flags) | flags)
- return dupFd
-}
-
func readFlagsFromFdInfo(fd int32, pid uint32) (Flags, error) {
data, err := os.ReadFile(fmt.Sprintf("/proc/%d/fdinfo/%d", pid, fd))
if err != nil {