File tree Expand file tree Collapse file tree 1 file changed +23
-16
lines changed
Expand file tree Collapse file tree 1 file changed +23
-16
lines changed Original file line number Diff line number Diff line change @@ -64,26 +64,33 @@ func (o *opts) watchFile() error {
6464 return nil
6565 }
6666 defer watcher .Close ()
67- if err = watcher .Add (o .file ); err != nil {
67+ if err : = watcher .Add (o .file ); err != nil {
6868 return err
6969 }
70- watcherError := errors .New ("watcher has been closed" )
7170 for {
72- select {
73- case event , ok := <- watcher .Events :
74- if ! ok {
75- return watcherError
76- }
77- if event .Has (fsnotify .Write ) {
78- if err := o .generateFile (true ); err != nil {
79- return err
80- }
81- }
82- case err , ok := <- watcher .Errors :
83- if ! ok {
84- return watcherError
85- }
71+ if err := o .waitForFileEvent (watcher ); err != nil {
8672 return err
8773 }
8874 }
8975}
76+
77+ func (o * opts ) waitForFileEvent (watcher * fsnotify.Watcher ) error {
78+ watcherError := errors .New ("watcher has been closed" )
79+ select {
80+ case event , ok := <- watcher .Events :
81+ if ! ok {
82+ return watcherError
83+ }
84+ if event .Has (fsnotify .Write ) {
85+ if err := o .generateFile (true ); err != nil {
86+ return err
87+ }
88+ }
89+ case err , ok := <- watcher .Errors :
90+ if ! ok {
91+ return watcherError
92+ }
93+ return err
94+ }
95+ return nil
96+ }
You can’t perform that action at this time.
0 commit comments