mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-01-07 06:03:09 -06:00
Try that again
This commit is contained in:
parent
87e7d32665
commit
e979667952
|
|
@ -435,7 +435,7 @@ func (d *Database) Events(
|
||||||
func (d *Database) events(
|
func (d *Database) events(
|
||||||
ctx context.Context, txn *sql.Tx, inputEventNIDs []types.EventNID,
|
ctx context.Context, txn *sql.Tx, inputEventNIDs []types.EventNID,
|
||||||
) ([]types.Event, error) {
|
) ([]types.Event, error) {
|
||||||
results := make([]types.Event, len(inputEventNIDs))
|
results := make([]types.Event, 0, len(inputEventNIDs))
|
||||||
eventNIDs := make([]types.EventNID, 0, len(results))
|
eventNIDs := make([]types.EventNID, 0, len(results))
|
||||||
for _, nid := range inputEventNIDs {
|
for _, nid := range inputEventNIDs {
|
||||||
if event, ok := d.Cache.GetRoomServerEvent(nid); ok && event != nil {
|
if event, ok := d.Cache.GetRoomServerEvent(nid); ok && event != nil {
|
||||||
|
|
@ -482,19 +482,21 @@ func (d *Database) events(
|
||||||
for n, v := range dbRoomVersions {
|
for n, v := range dbRoomVersions {
|
||||||
roomVersions[n] = v
|
roomVersions[n] = v
|
||||||
}
|
}
|
||||||
for i, eventJSON := range eventJSONs {
|
for _, eventJSON := range eventJSONs {
|
||||||
result := &results[i]
|
roomNID := roomNIDs[eventJSON.EventNID]
|
||||||
result.EventNID = eventJSON.EventNID
|
|
||||||
roomNID := roomNIDs[result.EventNID]
|
|
||||||
roomVersion := roomVersions[roomNID]
|
roomVersion := roomVersions[roomNID]
|
||||||
result.Event, err = gomatrixserverlib.NewEventFromTrustedJSONWithEventID(
|
event, err := gomatrixserverlib.NewEventFromTrustedJSONWithEventID(
|
||||||
eventIDs[eventJSON.EventNID], eventJSON.EventJSON, false, roomVersion,
|
eventIDs[eventJSON.EventNID], eventJSON.EventJSON, false, roomVersion,
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if result.Event != nil {
|
results = append(results, types.Event{
|
||||||
d.Cache.StoreRoomServerEvent(result.EventNID, result.Event)
|
EventNID: eventJSON.EventNID,
|
||||||
|
Event: event,
|
||||||
|
})
|
||||||
|
if event != nil {
|
||||||
|
d.Cache.StoreRoomServerEvent(eventJSON.EventNID, event)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if !redactionsArePermanent {
|
if !redactionsArePermanent {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue