diff --git a/ircd/m.cc b/ircd/m.cc index 849455f84..ee4201f8f 100644 --- a/ircd/m.cc +++ b/ircd/m.cc @@ -801,6 +801,7 @@ try } #endif + this_ctx::interruption_point(); return ret; } catch(const std::bad_function_call &e) diff --git a/modules/client/sync/rooms/state.cc b/modules/client/sync/rooms/state.cc index f1b0608f1..2d242a6aa 100644 --- a/modules/client/sync/rooms/state.cc +++ b/modules/client/sync/rooms/state.cc @@ -307,6 +307,7 @@ ircd::m::sync::room_state_polylog_events(data &data) if(data.membership != "join" && type == "m.room.member") return true; + this_ctx::interruption_point(); concurrent(event_idx); return true; });