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

index 5aa105b0..84b6dcd4 100644 --- a/src/timeline/EventStore.cpp +++ b/src/timeline/EventStore.cpp
@@ -155,7 +155,7 @@ EventStore::EventStore(std::string room_id, QObject *) } }); }, - event->data); + event.value()); }); connect( @@ -195,20 +195,20 @@ EventStore::EventStore(std::string room_id, QObject *) mtx::events::EncryptedEvent<mtx::events::msg::Encrypted> original_encrypted; if (auto encrypted = std::get_if<mtx::events::EncryptedEvent<mtx::events::msg::Encrypted>>( - &pending_event->data)) { + &pending_event.value())) { auto d_event = decryptEvent({room_id_, encrypted->event_id}, *encrypted); if (d_event->event) { - was_encrypted = true; - original_encrypted = *encrypted; - pending_event->data = *d_event->event; + was_encrypted = true; + original_encrypted = std::move(*encrypted); + *pending_event = std::move(*d_event->event); } } - auto relations = mtx::accessors::relations(pending_event->data); + auto relations = mtx::accessors::relations(pending_event.value()); // Replace the blockquote in fallback reply auto related_text = std::get_if<mtx::events::RoomEvent<mtx::events::msg::Text>>( - &pending_event->data); + &pending_event.value()); if (related_text && relations.reply_to() == txn_id) { size_t index = related_text->content.formatted_body.find(txn_id); if (index != std::string::npos) { @@ -228,7 +228,7 @@ EventStore::EventStore(std::string room_id, QObject *) if (!replaced_txn) continue; - mtx::accessors::set_relations(pending_event->data, std::move(relations)); + mtx::accessors::set_relations(pending_event.value(), std::move(relations)); // reencrypt. This is a bit of a hack and might make people able to read the // message, that were in the room at the time of sending the last pending message. @@ -246,7 +246,7 @@ EventStore::EventStore(std::string room_id, QObject *) {"content", nlohmann::json(msg.content)}, {"room_id", room_id_}}; }, - pending_event->data); + pending_event.value()); auto data = olm::encrypt_group_message_with_session( session.session, http::client()->device_id(), std::move(doc)); @@ -255,8 +255,8 @@ EventStore::EventStore(std::string room_id, QObject *) olm_outbound_group_session_message_index(session.session.get()); cache::updateOutboundMegolmSession(room_id_, session.data, session.session); - original_encrypted.content = data; - pending_event->data = original_encrypted; + original_encrypted.content = std::move(data); + *pending_event = std::move(original_encrypted); } cache::client()->replaceEvent(room_id_, pending_event_id, *pending_event); @@ -629,7 +629,7 @@ EventStore::reactions(const std::string &event_id) return temp; } -mtx::events::collections::TimelineEvents * +mtx::events::collections::TimelineEvents const * EventStore::get(int idx, bool decrypt) { if (this->thread() != QThread::currentThread()) @@ -645,17 +645,17 @@ EventStore::get(int idx, bool decrypt) if (!event_id) return nullptr; - std::optional<mtx::events::collections::TimelineEvent> event; + std::optional<mtx::events::collections::TimelineEvents> event; auto edits_ = edits(*event_id); if (edits_.empty()) event = cache::client()->getEvent(room_id_, *event_id); else - event = mtx::events::collections::TimelineEvent{edits_.back()}; + event = mtx::events::collections::TimelineEvents{edits_.back()}; if (!event) return nullptr; else - event_ptr = new mtx::events::collections::TimelineEvents(std::move(event->data)); + event_ptr = new mtx::events::collections::TimelineEvents(std::move(*event)); events_.insert(index, event_ptr); } @@ -692,7 +692,7 @@ EventStore::indexToId(int idx) const return cache::client()->getTimelineEventId(room_id_, toInternalIdx(idx)); } -olm::DecryptionResult * +olm::DecryptionResult const * EventStore::decryptEvent(const IdIndex &idx, const mtx::events::EncryptedEvent<mtx::events::msg::Encrypted> &e) { @@ -813,7 +813,7 @@ EventStore::enableKeyRequests(bool suppressKeyRequests_) suppressKeyRequests = true; } -mtx::events::collections::TimelineEvents * +mtx::events::collections::TimelineEvents const * EventStore::get(const std::string &id, std::string_view related_to, bool decrypt, @@ -856,7 +856,7 @@ EventStore::get(const std::string &id, }); return nullptr; } - event_ptr = new mtx::events::collections::TimelineEvents(std::move(event->data)); + event_ptr = new mtx::events::collections::TimelineEvents(std::move(*event)); events_by_id_.insert(index, event_ptr); } @@ -895,7 +895,7 @@ EventStore::decryptionError(std::string id) if (!event) { return olm::DecryptionErrorCode::NoError; } - event_ptr = new mtx::events::collections::TimelineEvents(std::move(event->data)); + event_ptr = new mtx::events::collections::TimelineEvents(std::move(*event)); events_by_id_.insert(index, event_ptr); }