aboutsummaryrefslogtreecommitdiff
path: root/vendor
diff options
context:
space:
mode:
authorMark Haines <mjark@negativecurvature.net>2017-07-24 13:42:55 +0100
committerMark Haines <mjark@negativecurvature.net>2017-07-24 13:42:55 +0100
commita904380e1bb685af03d49ad00a3ab80e728dc7f0 (patch)
tree763bcb8aa112652d63b16c6270c1ada50fa668a6 /vendor
parentce311ce0fe33dae8f47d631428dd3b5149a25ce0 (diff)
gb vendor update github.com/matrix-org/gomatrixserverlib
Diffstat (limited to 'vendor')
-rw-r--r--vendor/manifest2
-rw-r--r--vendor/src/github.com/matrix-org/gomatrixserverlib/event.go33
2 files changed, 33 insertions, 2 deletions
diff --git a/vendor/manifest b/vendor/manifest
index 95c4b6f8..425cc8f1 100644
--- a/vendor/manifest
+++ b/vendor/manifest
@@ -98,7 +98,7 @@
{
"importpath": "github.com/matrix-org/gomatrixserverlib",
"repository": "https://github.com/matrix-org/gomatrixserverlib",
- "revision": "30652b26ec2e83b97c941eb1c293bf7d67340f74",
+ "revision": "768a8767051a4aca7f5e41f912954ae04d5f1efb",
"branch": "master"
},
{
diff --git a/vendor/src/github.com/matrix-org/gomatrixserverlib/event.go b/vendor/src/github.com/matrix-org/gomatrixserverlib/event.go
index 94de3518..e8c2de0f 100644
--- a/vendor/src/github.com/matrix-org/gomatrixserverlib/event.go
+++ b/vendor/src/github.com/matrix-org/gomatrixserverlib/event.go
@@ -252,10 +252,41 @@ func (e Event) Redact() Event {
// This is unreachable for events created with EventBuilder.Build or NewEventFromUntrustedJSON
panic(fmt.Errorf("gomatrixserverlib: invalid event %v", err))
}
- return Event{
+ result := Event{
redacted: true,
eventJSON: eventJSON,
}
+ if err = json.Unmarshal(eventJSON, &result.fields); err != nil {
+ // This is unreachable for events created with EventBuilder.Build or NewEventFromUntrustedJSON
+ panic(fmt.Errorf("gomatrixserverlib: invalid event %v", err))
+ }
+ return result
+}
+
+// SetUnsigned sets the unsigned key of the event.
+// Returns a copy of the event with the "unsigned" key set.
+func (e Event) SetUnsigned(unsigned interface{}) (Event, error) {
+ var eventAsMap map[string]rawJSON
+ var err error
+ if err = json.Unmarshal(e.eventJSON, &eventAsMap); err != nil {
+ return Event{}, err
+ }
+ unsignedJSON, err := json.Marshal(unsigned)
+ if err != nil {
+ return Event{}, err
+ }
+ eventAsMap["unsigned"] = unsignedJSON
+ eventJSON, err := json.Marshal(eventAsMap)
+ if err != nil {
+ return Event{}, err
+ }
+ if eventJSON, err = CanonicalJSON(eventJSON); err != nil {
+ return Event{}, err
+ }
+ result := e
+ result.eventJSON = eventJSON
+ result.fields.Unsigned = unsignedJSON
+ return result, nil
}
// EventReference returns an EventReference for the event.