Преглед изворни кода

cmd/kgctl: fix possible nil pointer dereference

Lucas Servén Marín пре 7 година
родитељ
комит
a8467f779e
1 измењених фајлова са 4 додато и 3 уклоњено
  1. 4 3
      cmd/kgctl/graph.go

+ 4 - 3
cmd/kgctl/graph.go

@@ -36,15 +36,16 @@ func runGraph(_ *cobra.Command, _ []string) error {
 		return fmt.Errorf("failed to list nodes: %v", err)
 	}
 	var hostname string
-	if len(ns) != 0 {
-		hostname = ns[0].Name
-	}
 	nodes := make(map[string]*mesh.Node)
 	for _, n := range ns {
 		if n.Ready() {
 			nodes[n.Name] = n
+			hostname = n.Name
 		}
 	}
+	if len(nodes) == 0 {
+		return fmt.Errorf("did not find any valid Kilo nodes in the cluster")
+	}
 	t, err := mesh.NewTopology(nodes, opts.granularity, hostname, 0, []byte{}, opts.subnet)
 	if err != nil {
 		return fmt.Errorf("failed to create topology: %v", err)