Merge remote-tracking branch 'td/master'

This commit is contained in:
Andrea Cavalli 2021-12-08 16:46:26 +01:00
commit d930901d94
3 changed files with 11 additions and 1 deletions

View File

@ -4871,7 +4871,7 @@ setChatMemberStatus chat_id:int53 member_id:MessageSender status:ChatMemberStatu
//@description Bans a member in a chat. Members can't be banned in private or secret chats. In supergroups and channels, the user will not be able to return to the group on their own using invite links, etc., unless unbanned first
//@chat_id Chat identifier
//@member_id Member identifier
//@banned_until_date Point in time (Unix timestamp) when the user will be unbanned; 0 if never. If the user is banned for more than 366 days or for less than 30 seconds from the current time, the user is considered to be banned forever. Ignored in basic groups
//@banned_until_date Point in time (Unix timestamp) when the user will be unbanned; 0 if never. If the user is banned for more than 366 days or for less than 30 seconds from the current time, the user is considered to be banned forever. Ignored in basic groups and if a chat is banned
//@revoke_messages Pass true to delete all messages in the chat for the user that is being removed. Always true for supergroups and channels
banChatMember chat_id:int53 member_id:MessageSender banned_until_date:int32 revoke_messages:Bool = Ok;

View File

@ -1381,6 +1381,13 @@ void StickersManager::load_special_sticker_set(SpecialStickerSet &sticker_set) {
sticker_set.is_being_loaded_ = true;
LOG(INFO) << "Load " << sticker_set.type_.type_ << " " << sticker_set.id_;
if (sticker_set.id_.is_valid()) {
auto s = get_sticker_set(sticker_set.id_);
CHECK(s != nullptr);
if (s->was_loaded) {
reload_special_sticker_set(sticker_set, s->is_loaded ? s->hash : 0);
return;
}
auto promise = PromiseCreator::lambda([actor_id = actor_id(this), type = sticker_set.type_](Result<Unit> &&result) {
send_closure(actor_id, &StickersManager::on_load_special_sticker_set, type,
result.is_ok() ? Status::OK() : result.move_as_error());

View File

@ -519,6 +519,9 @@ void Scheduler::run_no_guard(Timestamp timeout) {
}
Timestamp Scheduler::get_timeout() {
if (!ready_actors_list_.empty()) {
return Timestamp::in(0);
}
if (timeout_queue_.empty()) {
return Timestamp::in(10000);
}