]> go.fuhry.dev Git - fsnotify.git/commitdiff
Reduce repeated error code in inotify
authorPieter Droogendijk <pieter@binky.org.uk>
Sun, 8 Feb 2015 00:36:12 +0000 (01:36 +0100)
committerNathan Youngman <git@nathany.com>
Sun, 8 Feb 2015 20:22:32 +0000 (13:22 -0700)
inotify.go

index 4198c3e66bb44901a9443c0aac2cf03ff268016a..3978fb54d93d1e2bb1136cde47496e74137c6f21 100644 (file)
@@ -194,27 +194,20 @@ func (w *Watcher) readEvents() {
                        return
                }
 
-               // If EOF is received. This should really never happen.
-               if n == 0 {
-                       select {
-                       case w.Errors <- io.EOF:
-                       case <-w.done:
-                               return
-                       }
-                       continue
-               }
-
-               if n < 0 {
-                       select {
-                       case w.Errors <- errno:
-                       case <-w.done:
-                               return
-                       }
-                       continue
-               }
                if n < syscall.SizeofInotifyEvent {
+                       var err error
+                       if n == 0 {
+                               // If EOF is received. This should really never happen.
+                               err = io.EOF
+                       } else if n < 0 {
+                               // If an error occured while reading.
+                               err = errno
+                       } else {
+                               // Read was too short.
+                               err = errors.New("notify: short read in readEvents()")
+                       }
                        select {
-                       case w.Errors <- errors.New("inotify: short read in readEvents()"):
+                       case w.Errors <- err:
                        case <-w.done:
                                return
                        }