Merge pull request #6896 from gyuho/endpoints

clientv3: return copy of endpoints, not pointer
release-3.1
Gyu-Ho Lee 2016-11-23 11:51:48 -08:00 committed by GitHub
commit c31b1ab8d1
1 changed files with 6 additions and 1 deletions

View File

@ -97,7 +97,12 @@ func (c *Client) Close() error {
func (c *Client) Ctx() context.Context { return c.ctx }
// Endpoints lists the registered endpoints for the client.
func (c *Client) Endpoints() []string { return c.cfg.Endpoints }
func (c *Client) Endpoints() (eps []string) {
// copy the slice; protect original endpoints from being changed
eps = make([]string, len(c.cfg.Endpoints))
copy(eps, c.cfg.Endpoints)
return
}
// SetEndpoints updates client's endpoints.
func (c *Client) SetEndpoints(eps ...string) {