Issue 111: TestReSeekInotify failed
if "case fsnotify.Chmod" logic before "case fsnotify.Rename" always `return changes.NotifyDeleted()` Test case pass: macOs 10.11.6 + go 1.6.2 Centos 6.4 + go 1.8
This commit is contained in:
parent
faf842bde7
commit
89ee1afdf5
|
@ -96,15 +96,6 @@ func (fw *InotifyFileWatcher) ChangeEvents(t *tomb.Tomb, pos int64) (*FileChange
|
|||
}
|
||||
|
||||
switch {
|
||||
//With an open fd, unlink(fd) - inotify returns IN_ATTRIB (==fsnotify.Chmod)
|
||||
case evt.Op&fsnotify.Chmod == fsnotify.Chmod:
|
||||
if _, err := os.Stat(fw.Filename); err != nil {
|
||||
if ! os.IsNotExist(err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
fallthrough
|
||||
|
||||
case evt.Op&fsnotify.Remove == fsnotify.Remove:
|
||||
fallthrough
|
||||
|
||||
|
@ -113,6 +104,10 @@ func (fw *InotifyFileWatcher) ChangeEvents(t *tomb.Tomb, pos int64) (*FileChange
|
|||
changes.NotifyDeleted()
|
||||
return
|
||||
|
||||
//With an open fd, unlink(fd) - inotify returns IN_ATTRIB (==fsnotify.Chmod)
|
||||
case evt.Op&fsnotify.Chmod == fsnotify.Chmod:
|
||||
fallthrough
|
||||
|
||||
case evt.Op&fsnotify.Write == fsnotify.Write:
|
||||
fi, err := os.Stat(fw.Filename)
|
||||
if err != nil {
|
||||
|
|
Loading…
Reference in New Issue