diff --git a/modules/client/sync/rooms/state.cc b/modules/client/sync/rooms/state.cc index 35a6d0f7e..05a069e8b 100644 --- a/modules/client/sync/rooms/state.cc +++ b/modules/client/sync/rooms/state.cc @@ -128,6 +128,16 @@ ircd::m::sync::room_state_linear_events(data &data) return false; } + if(is_own_membership && data.membership == "join") + { + const scope_restore data_range_first + { + data.range.first, 0UL + }; + + return room_state_polylog_events(data); + } + json::stack::object rooms { *data.out, "rooms" @@ -177,7 +187,7 @@ ircd::m::sync::room_state_linear_events(data &data) } }; - if(is_own_membership && (data.membership == "invite" || data.membership == "join")) + if(is_own_membership && data.membership == "invite") { const m::room::state state{*data.room}; state.get(std::nothrow, "m.room.create", "", append);