diff --git a/federation/pdu/pdu.go b/federation/pdu/pdu.go index 17db69952..d59bab0ec 100644 --- a/federation/pdu/pdu.go +++ b/federation/pdu/pdu.go @@ -120,6 +120,12 @@ func (pdu *PDU) ToClientEvent(roomVersion id.RoomVersion) (*event.Event, error) if err != nil { return nil, fmt.Errorf("failed to unmarshal content: %w", err) } + if len(pdu.Unsigned) > 0 { + err = json.Unmarshal(pdu.Unsigned, &evt.Unsigned) + if err != nil { + return nil, fmt.Errorf("failed to unmarshal unsigned content: %w", err) + } + } return evt, nil }