Browse Source

etcdctl/ctlv2/command: fix type switch case order

Since syscall.Errno implements net.Error and all cases
are matched sequentially, it's a mistake to put syscall.Errno
case after net.Error since it will never be executed.

This change swaps syscall.Errno case with net.Error
to give that clause chance to execute.
Iskander Sharipov 7 years ago
parent
commit
3da90b6d3e
1 changed files with 4 additions and 4 deletions
  1. 4 4
      etcdctl/ctlv2/command/util.go

+ 4 - 4
etcdctl/ctlv2/command/util.go

@@ -270,14 +270,14 @@ func isConnectionError(err error) bool {
 			return true
 		}
 		return isConnectionError(t.Err)
-	case net.Error:
-		if t.Timeout() {
-			return true
-		}
 	case syscall.Errno:
 		if t == syscall.ECONNREFUSED {
 			return true
 		}
+	case net.Error:
+		if t.Timeout() {
+			return true
+		}
 	}
 	return false
 }