From 60ce27cb5022e16198f29080020b941fa727e38a Mon Sep 17 00:00:00 2001 From: "Dr. Stefan Schimanski" Date: Wed, 9 Dec 2015 12:58:38 +0100 Subject: [PATCH] cloudprovider/mesos: fix panics when the Mesos master cannot be reached --- pkg/cloudprovider/providers/mesos/client.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkg/cloudprovider/providers/mesos/client.go b/pkg/cloudprovider/providers/mesos/client.go index 26426ef5568..87a1a5e449f 100644 --- a/pkg/cloudprovider/providers/mesos/client.go +++ b/pkg/cloudprovider/providers/mesos/client.go @@ -91,13 +91,19 @@ func (c *stateCache) cachedState(ctx context.Context) (*mesosState, error) { // clusterName returns the cached Mesos cluster name. func (c *stateCache) clusterName(ctx context.Context) (string, error) { cached, err := c.cachedState(ctx) - return cached.clusterName, err + if err != nil { + return "", err + } + return cached.clusterName, nil } // nodes returns the cached list of slave nodes. func (c *stateCache) nodes(ctx context.Context) (map[string]*slaveNode, error) { cached, err := c.cachedState(ctx) - return cached.nodes, err + if err != nil { + return nil, err + } + return cached.nodes, nil } func newMesosClient(