diff --git a/src/Cache.cpp b/src/Cache.cpp index 3e72b7ad..aecf5f7c 100644 --- a/src/Cache.cpp +++ b/src/Cache.cpp @@ -1956,14 +1956,24 @@ Cache::saveState(const mtx::responses::Sync &res) bool room_has_space_update = false; for (const auto &e : room.second.state.events) { if (auto se = std::get_if>(&e)) { - spaces_with_updates.insert(se->state_key); - room_has_space_update = true; + if (se->state_key.empty()) { + nhlog::db()->warn("Skipping space parent with empty state key in room {}", + room.first); + } else { + spaces_with_updates.insert(se->state_key); + room_has_space_update = true; + } } } for (const auto &e : room.second.timeline.events) { if (auto se = std::get_if>(&e)) { - spaces_with_updates.insert(se->state_key); - room_has_space_update = true; + if (se->state_key.empty()) { + nhlog::db()->warn("Skipping space child with empty state key in room {}", + room.first); + } else { + spaces_with_updates.insert(se->state_key); + room_has_space_update = true; + } } } @@ -2013,8 +2023,8 @@ Cache::saveState(const mtx::responses::Sync &res) if (auto newRoomInfoDump = nlohmann::json(updatedInfo).dump(); newRoomInfoDump != originalRoomInfoDump) { - nhlog::db()->critical( - "Writing out new room info:\n{}\n{}", originalRoomInfoDump, newRoomInfoDump); + // nhlog::db()->critical( + // "Writing out new room info:\n{}\n{}", originalRoomInfoDump, newRoomInfoDump); roomsDb_.put(txn, room.first, newRoomInfoDump); }