From 027c1eafc4e318c08b3f0cdae4280c1085363a93 Mon Sep 17 00:00:00 2001 From: levlam Date: Sun, 6 Jan 2019 01:25:09 +0300 Subject: [PATCH] Properly init MessagesManager. GitOrigin-RevId: 10bd6a41a479389afdbf6d621025bba766f8e850 --- td/telegram/MessagesManager.cpp | 12 +++++++++++- td/telegram/MessagesManager.h | 3 +++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/td/telegram/MessagesManager.cpp b/td/telegram/MessagesManager.cpp index 85363ccd0..99c713860 100644 --- a/td/telegram/MessagesManager.cpp +++ b/td/telegram/MessagesManager.cpp @@ -8735,6 +8735,15 @@ void MessagesManager::tear_down() { } void MessagesManager::start_up() { + init(); +} + +void MessagesManager::init() { + if (is_inited_) { + return; + } + is_inited_ = true; + always_wait_for_mailbox(); start_time_ = Time::now(); @@ -17925,7 +17934,8 @@ vector MessagesManager::get_message_notification_group_key if (!G()->parameters().use_message_db) { return {}; } - CHECK(start_time_ != 0); // ensure that MessagesManager was already inited in start_up + + init(); VLOG(notifications) << "Trying to load " << limit << " message notification groups from database from " << from_group_key; diff --git a/td/telegram/MessagesManager.h b/td/telegram/MessagesManager.h index 04584c191..168e23b48 100644 --- a/td/telegram/MessagesManager.h +++ b/td/telegram/MessagesManager.h @@ -1790,6 +1790,8 @@ class MessagesManager : public Actor { void loop() override; void tear_down() override; + void init(); + void ttl_db_loop_start(double server_now); void ttl_db_loop(double server_now); void ttl_db_on_result(Result>, int32>> r_result, bool dummy); @@ -2280,6 +2282,7 @@ class MessagesManager : public Actor { DialogId being_added_dialog_id_; double start_time_ = 0; + bool is_inited_ = false; Td *td_; ActorShared<> parent_;