Fix some MultiPromise locks.
This commit is contained in:
parent
9d74962296
commit
e87bf3a174
@ -1786,6 +1786,7 @@ bool InlineQueriesManager::load_recently_used_bots(Promise<Unit> &promise) {
|
|||||||
resolve_recent_inline_bots_multipromise_.add_promise(std::move(promise));
|
resolve_recent_inline_bots_multipromise_.add_promise(std::move(promise));
|
||||||
if (recently_used_bots_loaded_ == 0) {
|
if (recently_used_bots_loaded_ == 0) {
|
||||||
resolve_recent_inline_bots_multipromise_.set_ignore_errors(true);
|
resolve_recent_inline_bots_multipromise_.set_ignore_errors(true);
|
||||||
|
auto lock = resolve_recent_inline_bots_multipromise_.get_promise();
|
||||||
if (!G()->parameters().use_chat_info_db) {
|
if (!G()->parameters().use_chat_info_db) {
|
||||||
for (auto &bot_username : bot_usernames) {
|
for (auto &bot_username : bot_usernames) {
|
||||||
td_->messages_manager_->search_public_dialog(bot_username, false,
|
td_->messages_manager_->search_public_dialog(bot_username, false,
|
||||||
@ -1797,6 +1798,7 @@ bool InlineQueriesManager::load_recently_used_bots(Promise<Unit> &promise) {
|
|||||||
td_->contacts_manager_->get_user(user_id, 3, resolve_recent_inline_bots_multipromise_.get_promise());
|
td_->contacts_manager_->get_user(user_id, 3, resolve_recent_inline_bots_multipromise_.get_promise());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
lock.set_value(Unit());
|
||||||
recently_used_bots_loaded_ = 1;
|
recently_used_bots_loaded_ = 1;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -1304,16 +1304,6 @@ Status SecretChatActor::do_inbound_message_decrypted(unique_ptr<log_event::Inbou
|
|||||||
decrypted_message_service->random_id_, std::move(save_message_finish));
|
decrypted_message_service->random_id_, std::move(save_message_finish));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
/*
|
|
||||||
decryptedMessageActionResend#511110b0 start_seq_no:int end_seq_no:int = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionNotifyLayer#f3048883 layer:int = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionTyping#ccb27641 action:SendMessageAction = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionRequestKey#f3c9611b exchange_id:long g_a:bytes = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionAcceptKey#6fe1735b exchange_id:long g_b:bytes key_fingerprint:long = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionAbortKey#dd05ec6b exchange_id:long = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionCommitKey#ec2e0b9b exchange_id:long key_fingerprint:long = DecryptedMessageAction;
|
|
||||||
decryptedMessageActionNoop#a82fdd63 = DecryptedMessageAction;
|
|
||||||
*/
|
|
||||||
save_message_finish.set_value(Unit());
|
save_message_finish.set_value(Unit());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -277,6 +277,8 @@ void TdDb::do_close(Promise<> on_finished, bool destroy_flag) {
|
|||||||
}
|
}
|
||||||
binlog_.reset();
|
binlog_.reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lock.set_value(Unit());
|
||||||
}
|
}
|
||||||
|
|
||||||
Status TdDb::init_sqlite(int32 scheduler_id, const TdParameters ¶meters, DbKey key, DbKey old_key,
|
Status TdDb::init_sqlite(int32 scheduler_id, const TdParameters ¶meters, DbKey key, DbKey old_key,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user