From e979667952fa79e576acac7c75ea53061e3fb654 Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Wed, 15 Jun 2022 09:52:06 +0100 Subject: [PATCH] Try that again --- roomserver/storage/shared/storage.go | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/roomserver/storage/shared/storage.go b/roomserver/storage/shared/storage.go index 461b895c1..52709fc2f 100644 --- a/roomserver/storage/shared/storage.go +++ b/roomserver/storage/shared/storage.go @@ -435,7 +435,7 @@ func (d *Database) Events( func (d *Database) events( ctx context.Context, txn *sql.Tx, inputEventNIDs []types.EventNID, ) ([]types.Event, error) { - results := make([]types.Event, len(inputEventNIDs)) + results := make([]types.Event, 0, len(inputEventNIDs)) eventNIDs := make([]types.EventNID, 0, len(results)) for _, nid := range inputEventNIDs { if event, ok := d.Cache.GetRoomServerEvent(nid); ok && event != nil { @@ -482,19 +482,21 @@ func (d *Database) events( for n, v := range dbRoomVersions { roomVersions[n] = v } - for i, eventJSON := range eventJSONs { - result := &results[i] - result.EventNID = eventJSON.EventNID - roomNID := roomNIDs[result.EventNID] + for _, eventJSON := range eventJSONs { + roomNID := roomNIDs[eventJSON.EventNID] roomVersion := roomVersions[roomNID] - result.Event, err = gomatrixserverlib.NewEventFromTrustedJSONWithEventID( + event, err := gomatrixserverlib.NewEventFromTrustedJSONWithEventID( eventIDs[eventJSON.EventNID], eventJSON.EventJSON, false, roomVersion, ) if err != nil { return nil, err } - if result.Event != nil { - d.Cache.StoreRoomServerEvent(result.EventNID, result.Event) + results = append(results, types.Event{ + EventNID: eventJSON.EventNID, + Event: event, + }) + if event != nil { + d.Cache.StoreRoomServerEvent(eventJSON.EventNID, event) } } if !redactionsArePermanent {