aboutsummaryrefslogtreecommitdiff
path: root/roomserver/state/v1/state.go
diff options
context:
space:
mode:
Diffstat (limited to 'roomserver/state/v1/state.go')
-rw-r--r--roomserver/state/v1/state.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/roomserver/state/v1/state.go b/roomserver/state/v1/state.go
index 5683745b..3eb60192 100644
--- a/roomserver/state/v1/state.go
+++ b/roomserver/state/v1/state.go
@@ -366,11 +366,16 @@ func (v StateResolutionV1) loadStateAfterEventsForNumericTuples(
// update that key in the result.
// If the requested event wasn't a state event then the state after
// it is the same as the state before it.
+ set := false
for i := range result {
if result[i].StateKeyTuple == prevState.StateKeyTuple {
result[i] = prevState.StateEntry
+ set = true
}
}
+ if !set { // no previous state exists for this event: add new state
+ result = append(result, prevState.StateEntry)
+ }
}
return result, nil
}