Fix data race on cancel variable in etcd code

This commit is contained in:
Timothy St. Clair 2015-12-18 18:37:45 -06:00
parent 977854b8de
commit e3311aa93a

View File

@ -158,7 +158,9 @@ func (w *etcdWatcher) etcdWatch(ctx context.Context, client etcd.KeysAPI, key st
AfterIndex: resourceVersion,
}
watcher := client.Watcher(key, &opts)
w.stopLock.Lock()
w.ctx, w.cancel = context.WithCancel(ctx)
w.stopLock.Unlock()
for {
resp, err := watcher.Next(w.ctx)