Browse Source

Remove unnecessary content ParseRaw calls

Signed-off-by: Nikos Filippakis <me@nfil.dev>
pull/330/head
Nikos Filippakis 4 years ago
parent
commit
b6afbc11e4
  1. 18
      clients/clients.go
  2. 1
      clients/clients_test.go
  3. 2
      go.mod

18
clients/clients.go

@ -159,10 +159,6 @@ func (c *Clients) onMessageEvent(botClient *BotClient, event *mevt.Event) {
}).Warn("Error loading services")
}
if err := event.Content.ParseRaw(mevt.EventMessage); err != nil {
return
}
message := event.Content.AsMessage()
body := message.Body
@ -307,9 +303,6 @@ func (c *Clients) onBotOptionsEvent(client *mautrix.Client, event *mevt.Event) {
}
func (c *Clients) onRoomMemberEvent(client *mautrix.Client, event *mevt.Event) {
if err := event.Content.ParseRaw(mevt.StateMember); err != nil {
return
}
if event.StateKey == nil || *event.StateKey != client.UserID.String() {
return // not our member event
}
@ -384,10 +377,6 @@ func (c *Clients) initClient(botClient *BotClient) error {
// When receiving an encrypted event, attempt to decrypt it using the BotClient's capabilities.
// If successfully decrypted propagate the decrypted event to the clients.
syncer.OnEventType(mevt.EventEncrypted, func(source mautrix.EventSource, evt *mevt.Event) {
if err := evt.Content.ParseRaw(mevt.EventEncrypted); err != nil {
log.WithError(err).Error("Failed to parse encrypted message")
return
}
encContent := evt.Content.AsEncrypted()
decrypted, err := botClient.DecryptMegolmEvent(evt)
if err != nil {
@ -399,12 +388,7 @@ func (c *Clients) initClient(botClient *BotClient) error {
}).WithError(err).Error("Failed to decrypt message")
} else {
if decrypted.Type == mevt.EventMessage {
err = decrypted.Content.ParseRaw(mevt.EventMessage)
if err != nil {
log.WithError(err).Error("Could not parse decrypted message event")
} else {
c.onMessageEvent(botClient, decrypted)
}
c.onMessageEvent(botClient, decrypted)
}
log.WithFields(log.Fields{
"type": evt.Type,

1
clients/clients_test.go

@ -89,6 +89,7 @@ func TestCommandParsing(t *testing.T) {
} else {
content.VeryRaw = veryRaw
}
content.ParseRaw(mevt.EventMessage)
event := mevt.Event{
Type: mevt.EventMessage,
Sender: "@someone:somewhere",

2
go.mod

@ -51,5 +51,5 @@ require (
gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect
gopkg.in/yaml.v2 v2.3.0
maunium.net/go/mautrix v0.5.5
maunium.net/go/mautrix v0.5.7
)
Loading…
Cancel
Save