mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-26 08:13:09 -06:00
Skip having to re-marshal PowerLevelContentOverride by making use of json.RawMessage
This commit is contained in:
parent
ba97baefba
commit
bcadf96848
|
|
@ -48,7 +48,7 @@ type createRoomRequest struct {
|
||||||
RoomAliasName string `json:"room_alias_name"`
|
RoomAliasName string `json:"room_alias_name"`
|
||||||
GuestCanJoin bool `json:"guest_can_join"`
|
GuestCanJoin bool `json:"guest_can_join"`
|
||||||
RoomVersion gomatrixserverlib.RoomVersion `json:"room_version"`
|
RoomVersion gomatrixserverlib.RoomVersion `json:"room_version"`
|
||||||
PowerLevelContentOverride map[string]interface{} `json:"power_level_content_override"`
|
PowerLevelContentOverride json.RawMessage `json:"power_level_content_override"`
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|
@ -261,16 +261,7 @@ func createRoom(
|
||||||
powerLevelContent := eventutil.InitialPowerLevelsContent(userID)
|
powerLevelContent := eventutil.InitialPowerLevelsContent(userID)
|
||||||
if r.PowerLevelContentOverride != nil {
|
if r.PowerLevelContentOverride != nil {
|
||||||
// Merge powerLevelContentOverride fields by unmarshalling it atop the defaults
|
// Merge powerLevelContentOverride fields by unmarshalling it atop the defaults
|
||||||
var powerLevelContentOverrideBytes []byte
|
err = json.Unmarshal(r.PowerLevelContentOverride, &powerLevelContent)
|
||||||
powerLevelContentOverrideBytes, err = json.Marshal(r.PowerLevelContentOverride)
|
|
||||||
if err != nil {
|
|
||||||
return util.JSONResponse{
|
|
||||||
Code: http.StatusBadRequest,
|
|
||||||
JSON: jsonerror.BadJSON("malformed power_level_content_override"),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
err = json.Unmarshal(powerLevelContentOverrideBytes, &powerLevelContent)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return util.JSONResponse{
|
return util.JSONResponse{
|
||||||
Code: http.StatusBadRequest,
|
Code: http.StatusBadRequest,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue