Merge pull request #20522 from LK4D4/do_not_close_chan
filenotify: don't close channels to avoid panic
diff --git a/pkg/filenotify/poller.go b/pkg/filenotify/poller.go
index 0d92afd..0ab4338 100644
--- a/pkg/filenotify/poller.go
+++ b/pkg/filenotify/poller.go
@@ -118,8 +118,10 @@
w.remove(name)
delete(w.watches, name)
}
- close(w.events)
- close(w.errors)
+ // channels will be closed by GC, we don't do it to avoid panic in send
+ // functions
+ // close(w.events)
+ // close(w.errors)
return nil
}
diff --git a/pkg/filenotify/poller_test.go b/pkg/filenotify/poller_test.go
index 49e6e64..228cf58 100644
--- a/pkg/filenotify/poller_test.go
+++ b/pkg/filenotify/poller_test.go
@@ -89,24 +89,6 @@
t.Fatal(err)
}
- select {
- case _, open := <-w.Events():
- if open {
- t.Fatal("event chan should be closed")
- }
- default:
- t.Fatal("event chan should be closed")
- }
-
- select {
- case _, open := <-w.Errors():
- if open {
- t.Fatal("errors chan should be closed")
- }
- default:
- t.Fatal("errors chan should be closed")
- }
-
f, err := ioutil.TempFile("", "asdf")
if err != nil {
t.Fatal(err)