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)