Merge pull request #764 from peppy/fix-duplicate-channels

Fix duplicate channels being created on connection loss
This commit is contained in:
Dean Herbert 2017-05-16 18:54:35 +09:00 committed by GitHub
commit 3a12fbd581

View File

@ -284,10 +284,21 @@ namespace osu.Game.Overlays
{
if (channel == null) return;
careChannels.Add(channel);
channelTabs.AddItem(channel);
var existing = careChannels.Find(c => c.Id == channel.Id);
// we need to get a good number of messages initially for each channel we care about.
if (existing != null)
{
// if we already have this channel loaded, we don't want to make a second one.
channel = existing;
}
else
{
careChannels.Add(channel);
channelTabs.AddItem(channel);
}
// let's fetch a small number of messages to bring us up-to-date with the backlog.
fetchInitialMessages(channel);
if (CurrentChannel == null)