diff options
| -rw-r--r-- | internal/eventloop.go | 5 | ||||
| -rw-r--r-- | internal/file/file.go | 7 |
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 { |
