Add source to reload_reaction_list.
This commit is contained in:
parent
fa8c88033a
commit
be197d6ec3
@ -9587,8 +9587,10 @@ void ContactsManager::update_user(User *u, UserId user_id, bool from_binlog, boo
|
||||
if (td_->option_manager_->get_option_boolean("is_premium") != u->is_premium) {
|
||||
td_->option_manager_->set_option_boolean("is_premium", u->is_premium);
|
||||
send_closure(td_->config_manager_, &ConfigManager::request_config, true);
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Top);
|
||||
td_->messages_manager_->update_is_translatable(u->is_premium);
|
||||
if (!td_->auth_manager_->is_bot()) {
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Top, "update_user is_premium");
|
||||
td_->messages_manager_->update_is_translatable(u->is_premium);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (u->is_name_changed || u->is_username_changed || u->is_is_contact_changed) {
|
||||
|
@ -126,7 +126,7 @@ class ClearRecentReactionsQuery final : public Td::ResultHandler {
|
||||
return on_error(result_ptr.move_as_error());
|
||||
}
|
||||
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Recent);
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Recent, "ClearRecentReactionsQuery");
|
||||
promise_.set_value(Unit());
|
||||
}
|
||||
|
||||
@ -134,7 +134,7 @@ class ClearRecentReactionsQuery final : public Td::ResultHandler {
|
||||
if (!G()->is_expected_error(status)) {
|
||||
LOG(ERROR) << "Receive error for clear recent reactions: " << status;
|
||||
}
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Recent);
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Recent, "ClearRecentReactionsQuery");
|
||||
promise_.set_error(std::move(status));
|
||||
}
|
||||
};
|
||||
@ -670,10 +670,11 @@ void ReactionManager::reload_reactions() {
|
||||
td_->create_handler<GetAvailableReactionsQuery>()->send(reactions_.hash_);
|
||||
}
|
||||
|
||||
void ReactionManager::reload_reaction_list(ReactionListType reaction_list_type) {
|
||||
void ReactionManager::reload_reaction_list(ReactionListType reaction_list_type, const char *source) {
|
||||
if (G()->close_flag()) {
|
||||
return;
|
||||
}
|
||||
LOG(INFO) << "Reload " << reaction_list_type << " from " << source;
|
||||
auto &reaction_list = get_reaction_list(reaction_list_type);
|
||||
if (reaction_list.is_being_reloaded_) {
|
||||
return;
|
||||
@ -775,14 +776,14 @@ void ReactionManager::load_reaction_list(ReactionListType reaction_list_type) {
|
||||
LOG(INFO) << "Loading " << reaction_list_type;
|
||||
string reactions_str = G()->td_db()->get_binlog_pmc()->get(get_reaction_list_type_database_key(reaction_list_type));
|
||||
if (reactions_str.empty()) {
|
||||
return reload_reaction_list(reaction_list_type);
|
||||
return reload_reaction_list(reaction_list_type, "load_reaction_list 1");
|
||||
}
|
||||
|
||||
auto status = log_event_parse(reaction_list, reactions_str);
|
||||
if (status.is_error()) {
|
||||
LOG(ERROR) << "Can't load " << reaction_list_type << ": " << status;
|
||||
reaction_list = {};
|
||||
return reload_reaction_list(reaction_list_type);
|
||||
return reload_reaction_list(reaction_list_type, "load_reaction_list 2");
|
||||
}
|
||||
|
||||
LOG(INFO) << "Successfully loaded " << reaction_list.reaction_types_.size() << ' ' << reaction_list_type;
|
||||
|
@ -60,7 +60,7 @@ class ReactionManager final : public Actor {
|
||||
|
||||
void reload_reactions();
|
||||
|
||||
void reload_reaction_list(ReactionListType reaction_list_type);
|
||||
void reload_reaction_list(ReactionListType reaction_list_type, const char *source);
|
||||
|
||||
void on_get_reaction_list(ReactionListType reaction_list_type,
|
||||
tl_object_ptr<telegram_api::messages_Reactions> &&reactions_ptr);
|
||||
|
@ -2281,7 +2281,7 @@ void UpdatesManager::try_reload_data() {
|
||||
|
||||
for (int32 type = 0; type < MAX_REACTION_LIST_TYPE; type++) {
|
||||
auto reaction_list_type = static_cast<ReactionListType>(type);
|
||||
td_->reaction_manager_->reload_reaction_list(reaction_list_type);
|
||||
td_->reaction_manager_->reload_reaction_list(reaction_list_type, "try_reload_data");
|
||||
}
|
||||
|
||||
for (int32 type = 0; type < MAX_STICKER_TYPE; type++) {
|
||||
@ -3751,7 +3751,7 @@ void UpdatesManager::on_update(tl_object_ptr<telegram_api::updateMessageReaction
|
||||
}
|
||||
|
||||
void UpdatesManager::on_update(tl_object_ptr<telegram_api::updateRecentReactions> update, Promise<Unit> &&promise) {
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Recent);
|
||||
td_->reaction_manager_->reload_reaction_list(ReactionListType::Recent, "updateRecentReactions");
|
||||
promise.set_value(Unit());
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user