diff --git a/etcd.go b/etcd.go index a5fc96772..cc75a8bea 100644 --- a/etcd.go +++ b/etcd.go @@ -216,7 +216,7 @@ func main() { if argInfo.WebPort != -1 { // start web - etcdStore.SetMessager(&storeMsg) + etcdStore.SetMessager(storeMsg) go webHelper() go web.Start(raftServer, argInfo.WebPort) } diff --git a/store/store.go b/store/store.go index 5ef4bc2d4..da7274eb3 100644 --- a/store/store.go +++ b/store/store.go @@ -35,7 +35,7 @@ type Store struct { // The string channel to send messages to the outside world // Now we use it to send changes to the hub of the web service - messager *chan string + messager chan<- string // A map to keep the recent response to the clients ResponseMap map[string]*Response @@ -141,7 +141,7 @@ func CreateStore(max int) *Store { } // Set the messager of the store -func (s *Store) SetMessager(messager *chan string) { +func (s *Store) SetMessager(messager chan<- string) { s.messager = messager } @@ -224,8 +224,7 @@ func (s *Store) internalSet(key string, value string, expireTime time.Time, inde // Send to the messager if s.messager != nil && err == nil { - - *s.messager <- string(msg) + s.messager <- string(msg) } s.addToResponseMap(index, &resp) @@ -257,8 +256,7 @@ func (s *Store) internalSet(key string, value string, expireTime time.Time, inde // Send to the messager if s.messager != nil && err == nil { - - *s.messager <- string(msg) + s.messager <- string(msg) } s.addToResponseMap(index, &resp) @@ -440,8 +438,7 @@ func (s *Store) internalDelete(key string, index uint64) ([]byte, error) { // notify the messager if s.messager != nil && err == nil { - - *s.messager <- string(msg) + s.messager <- string(msg) } s.addToResponseMap(index, &resp) @@ -526,8 +523,7 @@ func (s *Store) monitorExpiration(key string, update chan time.Time, expireTime // notify the messager if s.messager != nil && err == nil { - - *s.messager <- string(msg) + s.messager <- string(msg) } return