This specifically has a fix for leaking epoll fd's.
Full diff: https://github.com/fsnotify/fsnotify/commit/1485a34d5d5723fea214f5710708e19a831720e4
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
| ... | ... |
@@ -101,7 +101,7 @@ github.com/philhofer/fwd bb6d471dc95d4fe11e432687f8b7 |
| 101 | 101 |
github.com/tinylib/msgp 3b556c64540842d4f82967be066a7f7fffc3adad |
| 102 | 102 |
|
| 103 | 103 |
# fsnotify |
| 104 |
-github.com/fsnotify/fsnotify c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9 # v1.4.7 |
|
| 104 |
+github.com/fsnotify/fsnotify 1485a34d5d5723fea214f5710708e19a831720e4 # v1.4.7-11-g1485a34 |
|
| 105 | 105 |
|
| 106 | 106 |
# awslogs deps |
| 107 | 107 |
github.com/aws/aws-sdk-go 9ed0c8de252f04ac45a65358377103d5a1aa2d92 # v1.12.66 |
| ... | ... |
@@ -14,7 +14,7 @@ Cross platform: Windows, Linux, BSD and macOS. |
| 14 | 14 |
|----------|----------|----------| |
| 15 | 15 |
|inotify |Linux 2.6.27 or later, Android\*|Supported [](https://travis-ci.org/fsnotify/fsnotify)| |
| 16 | 16 |
|kqueue |BSD, macOS, iOS\*|Supported [](https://travis-ci.org/fsnotify/fsnotify)| |
| 17 |
-|ReadDirectoryChangesW|Windows|Supported [](https://ci.appveyor.com/project/NathanYoungman/fsnotify/branch/master)| |
|
| 17 |
+|ReadDirectoryChangesW|Windows|Supported [](https://travis-ci.org/fsnotify/fsnotify)| |
|
| 18 | 18 |
|FSEvents |macOS |[Planned](https://github.com/fsnotify/fsnotify/issues/11)| |
| 19 | 19 |
|FEN |Solaris 11 |[In Progress](https://github.com/fsnotify/fsnotify/issues/12)| |
| 20 | 20 |
|fanotify |Linux 2.6.37+ | | |
| ... | ... |
@@ -40,12 +40,12 @@ func newFdPoller(fd int) (*fdPoller, error) {
|
| 40 | 40 |
poller.fd = fd |
| 41 | 41 |
|
| 42 | 42 |
// Create epoll fd |
| 43 |
- poller.epfd, errno = unix.EpollCreate1(0) |
|
| 43 |
+ poller.epfd, errno = unix.EpollCreate1(unix.EPOLL_CLOEXEC) |
|
| 44 | 44 |
if poller.epfd == -1 {
|
| 45 | 45 |
return nil, errno |
| 46 | 46 |
} |
| 47 | 47 |
// Create pipe; pipe[0] is the read end, pipe[1] the write end. |
| 48 |
- errno = unix.Pipe2(poller.pipe[:], unix.O_NONBLOCK) |
|
| 48 |
+ errno = unix.Pipe2(poller.pipe[:], unix.O_NONBLOCK|unix.O_CLOEXEC) |
|
| 49 | 49 |
if errno != nil {
|
| 50 | 50 |
return nil, errno |
| 51 | 51 |
} |