Guard empty replies when loading usernames

This commit is contained in:
John Preston
2026-07-07 22:40:21 +04:00
parent 4ded3ff299
commit d44f70ad48
@@ -71,6 +71,11 @@ rpl::producer<Data::Usernames> Usernames::loadUsernames(
_session->api().request(MTPusers_GetUsers(
MTP_vector<MTPInputUser>(1, data)
)).done([=](const MTPVector<MTPUser> &result) {
if (result.v.isEmpty()) {
consumer.put_next({});
consumer.put_done();
return;
}
result.v.front().match([&](const MTPDuser &data) {
push(data.vusernames(), data.vusername());
consumer.put_done();
@@ -85,6 +90,11 @@ rpl::producer<Data::Usernames> Usernames::loadUsernames(
MTP_vector<MTPInputChannel>(1, data)
)).done([=](const MTPmessages_Chats &result) {
result.match([&](const auto &data) {
if (data.vchats().v.isEmpty()) {
consumer.put_next({});
consumer.put_done();
return;
}
data.vchats().v.front().match([&](const MTPDchannel &c) {
push(c.vusernames(), c.vusername());
consumer.put_done();