summary refs log tree commit diff
path: root/src/Cache.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Cache.cpp')
-rw-r--r--src/Cache.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/Cache.cpp b/src/Cache.cpp

index 17b55144..389df0a3 100644 --- a/src/Cache.cpp +++ b/src/Cache.cpp
@@ -1208,10 +1208,11 @@ Cache::saveState(const mtx::responses::Sync &res) for (const auto &ev : res.account_data.events) std::visit( [&txn, &accountDataDb](const auto &event) { + auto j = json(event); lmdb::dbi_put(txn, accountDataDb, - lmdb::val(to_string(event.type)), - lmdb::val(json(event).dump())); + lmdb::val(j["type"].get<std::string>()), + lmdb::val(j.dump())); }, ev); } @@ -1242,10 +1243,11 @@ Cache::saveState(const mtx::responses::Sync &res) for (const auto &evt : room.second.account_data.events) { std::visit( [&txn, &accountDataDb](const auto &event) { + auto j = json(event); lmdb::dbi_put(txn, accountDataDb, - lmdb::val(to_string(event.type)), - lmdb::val(json(event).dump())); + lmdb::val(j["type"].get<std::string>()), + lmdb::val(j.dump())); }, evt); @@ -1391,10 +1393,11 @@ Cache::saveInvite(lmdb::txn &txn, } else { std::visit( [&txn, &statesdb](auto msg) { + auto j = json(msg); bool res = lmdb::dbi_put(txn, statesdb, - lmdb::val(to_string(msg.type)), - lmdb::val(json(msg).dump())); + lmdb::val(j["type"].get<std::string>()), + lmdb::val(j.dump())); if (!res) nhlog::db()->warn("couldn't save data: {}",