[MM-19914] Fix data races in WebSocketEvent (#13039)

* Make WebSocketEvent type immutable

* Update code to use updated immutable WebSocketEvent type

* Export WebSocketEvent fields and mark them as deprecated
Этот коммит содержится в:
Claudio Costa
2019-12-24 09:32:11 +01:00
коммит произвёл GitHub
родитель 9ab7bee0a6
Коммит 80dd2915db
16 изменённых файлов: 216 добавлений и 94 удалений

Просмотреть файл

@@ -4,6 +4,7 @@
package model
import (
"bytes"
"encoding/json"
"net/http"
"time"
@@ -121,9 +122,9 @@ func (wsc *WebSocketClient) Listen() {
return
}
var event WebSocketEvent
if err := json.Unmarshal(rawMsg, &event); err == nil && event.IsValid() {
wsc.EventChannel <- &event
event := WebSocketEventFromJson(bytes.NewReader(rawMsg))
if event.IsValid() {
wsc.EventChannel <- event
continue
}