Use send_closure instead of raw call.
This commit is contained in:
parent
e18901953a
commit
4b41d620c5
@ -15204,9 +15204,9 @@ void ContactsManager::on_load_dialog_administrators_from_database(DialogId dialo
|
|||||||
<< " from database";
|
<< " from database";
|
||||||
|
|
||||||
MultiPromiseActorSafe load_users_multipromise{"LoadUsersMultiPromiseActor"};
|
MultiPromiseActorSafe load_users_multipromise{"LoadUsersMultiPromiseActor"};
|
||||||
load_users_multipromise.add_promise(
|
load_users_multipromise.add_promise(PromiseCreator::lambda(
|
||||||
PromiseCreator::lambda([dialog_id, administrators, promise = std::move(promise)](Result<> result) mutable {
|
[actor_id = actor_id(this), dialog_id, administrators, promise = std::move(promise)](Result<> result) mutable {
|
||||||
send_closure(G()->contacts_manager(), &ContactsManager::on_load_administrator_users_finished, dialog_id,
|
send_closure(actor_id, &ContactsManager::on_load_administrator_users_finished, dialog_id,
|
||||||
std::move(administrators), std::move(result), std::move(promise));
|
std::move(administrators), std::move(result), std::move(promise));
|
||||||
}));
|
}));
|
||||||
|
|
||||||
@ -15222,7 +15222,7 @@ void ContactsManager::on_load_dialog_administrators_from_database(DialogId dialo
|
|||||||
void ContactsManager::on_load_administrator_users_finished(DialogId dialog_id,
|
void ContactsManager::on_load_administrator_users_finished(DialogId dialog_id,
|
||||||
vector<DialogAdministrator> administrators, Result<> result,
|
vector<DialogAdministrator> administrators, Result<> result,
|
||||||
Promise<Unit> promise) {
|
Promise<Unit> promise) {
|
||||||
if (result.is_ok()) {
|
if (!G()->close_flag() && result.is_ok()) {
|
||||||
dialog_administrators_.emplace(dialog_id, std::move(administrators));
|
dialog_administrators_.emplace(dialog_id, std::move(administrators));
|
||||||
}
|
}
|
||||||
promise.set_value(Unit());
|
promise.set_value(Unit());
|
||||||
|
@ -2293,11 +2293,12 @@ StickerSetId StickersManager::on_get_input_sticker_set(FileId sticker_file_id,
|
|||||||
}
|
}
|
||||||
auto set_id = search_sticker_set(set->short_name_, load_data_multipromise_ptr->get_promise());
|
auto set_id = search_sticker_set(set->short_name_, load_data_multipromise_ptr->get_promise());
|
||||||
if (!set_id.is_valid()) {
|
if (!set_id.is_valid()) {
|
||||||
load_data_multipromise_ptr->add_promise(
|
load_data_multipromise_ptr->add_promise(PromiseCreator::lambda(
|
||||||
PromiseCreator::lambda([td = td_, sticker_file_id, short_name = set->short_name_](Result<Unit> result) {
|
[actor_id = actor_id(this), sticker_file_id, short_name = set->short_name_](Result<Unit> result) {
|
||||||
if (result.is_ok()) {
|
if (result.is_ok()) {
|
||||||
// just in case
|
// just in case
|
||||||
td->stickers_manager_->on_resolve_sticker_set_short_name(sticker_file_id, short_name);
|
send_closure(actor_id, &StickersManager::on_resolve_sticker_set_short_name, sticker_file_id,
|
||||||
|
short_name);
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
@ -2317,6 +2318,10 @@ StickerSetId StickersManager::on_get_input_sticker_set(FileId sticker_file_id,
|
|||||||
}
|
}
|
||||||
|
|
||||||
void StickersManager::on_resolve_sticker_set_short_name(FileId sticker_file_id, const string &short_name) {
|
void StickersManager::on_resolve_sticker_set_short_name(FileId sticker_file_id, const string &short_name) {
|
||||||
|
if (G()->close_flag()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
LOG(INFO) << "Resolve sticker " << sticker_file_id << " set to " << short_name;
|
LOG(INFO) << "Resolve sticker " << sticker_file_id << " set to " << short_name;
|
||||||
StickerSetId set_id = search_sticker_set(short_name, Auto());
|
StickerSetId set_id = search_sticker_set(short_name, Auto());
|
||||||
if (set_id.is_valid()) {
|
if (set_id.is_valid()) {
|
||||||
|
Loading…
Reference in New Issue
Block a user