mirror of
https://github.com/wiz0u/WTelegramClient.git
synced 2025-12-06 06:52:01 +01:00
CollectUsersChats allows null dictionaries
This commit is contained in:
parent
8a9f886b62
commit
2b65e8f1ed
|
|
@ -17,17 +17,19 @@ namespace TL
|
|||
internal IDictionary<long, ChatBase> _chats;
|
||||
protected internal override IPeerInfo UserOrChat(Dictionary<long, User> users, Dictionary<long, ChatBase> chats)
|
||||
{
|
||||
lock (_users)
|
||||
foreach (var user in users.Values)
|
||||
if (user != null)
|
||||
if (!user.flags.HasFlag(User.Flags.min) || !_users.TryGetValue(user.id, out var prevUser) || prevUser.flags.HasFlag(User.Flags.min))
|
||||
_users[user.id] = user;
|
||||
lock (_chats)
|
||||
foreach (var kvp in chats)
|
||||
if (kvp.Value is not Channel channel)
|
||||
_chats[kvp.Key] = kvp.Value;
|
||||
else if (!channel.flags.HasFlag(Channel.Flags.min) || !_chats.TryGetValue(channel.id, out var prevChat) || prevChat is not Channel prevChannel || prevChannel.flags.HasFlag(Channel.Flags.min))
|
||||
_chats[kvp.Key] = channel;
|
||||
if (_users != null)
|
||||
lock (_users)
|
||||
foreach (var user in users.Values)
|
||||
if (user != null)
|
||||
if (!user.flags.HasFlag(User.Flags.min) || !_users.TryGetValue(user.id, out var prevUser) || prevUser.flags.HasFlag(User.Flags.min))
|
||||
_users[user.id] = user;
|
||||
if (_chats != null)
|
||||
lock (_chats)
|
||||
foreach (var kvp in chats)
|
||||
if (kvp.Value is not Channel channel)
|
||||
_chats[kvp.Key] = kvp.Value;
|
||||
else if (!channel.flags.HasFlag(Channel.Flags.min) || !_chats.TryGetValue(channel.id, out var prevChat) || prevChat is not Channel prevChannel || prevChannel.flags.HasFlag(Channel.Flags.min))
|
||||
_chats[kvp.Key] = channel;
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue