1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-15 17:15:36 +08:00
osu-lazer/osu.Game/Screens
Dean Herbert dea7f2308c Fix participant panels potentially keeping a reference to an old user
If a user leave and then rejoins a multiplayer match while another user
is not at the lobby screen, there is a potential the `ParticipantPanel`
tracking the user will not correctly be recreated to reference the new
instance of the `MultiplayerUser`.

This happens because the `OnRoomUpdated` call is scheduled, which means
it is not running in the background, coupled with the local logic that
relies on `IEquatable(MultiplayerRoomUser)` (which in turn falls back to
a UserID comparison).

Changing this to a reference comparison is the easiest way to resolve
this. Whether we change the `IEquatable` implementation is up for
discussion.

Closes https://github.com/ppy/osu/issues/15970.
2021-12-07 17:24:04 +09:00
..
Backgrounds Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
Edit Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Import Remove unnecessary AllowTrackAdjustments overrides, add true to SongSelect 2021-09-15 13:12:57 +03:00
Menu Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
OnlinePlay Fix participant panels potentially keeping a reference to an old user 2021-12-07 17:24:04 +09:00
Play Merge branch 'master' into i-ruleset-store 2021-12-04 15:05:39 +01:00
Ranking Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Select Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Spectate Update all actual usages of RulesetInfo.ID to use OnlineID instead 2021-11-24 15:50:26 +09:00
BackgroundScreen.cs Fix background overflows 2021-08-20 17:50:49 +09:00
BackgroundScreenStack.cs Improve code around background screen handling to read better 2021-09-07 14:35:33 +09:00
IHandlePresentBeatmap.cs Remove explicit public definition 2021-03-03 19:03:45 +09:00
IHasSubScreenStack.cs Add the ability for PerformFromMenuRunner to inspect nested screen stacks 2021-02-19 17:58:04 +09:00
IOsuScreen.cs Move MusicController adjustment set to inside OsuScreen itself (and result nullable) 2021-09-16 16:08:09 +09:00
Loader.cs Allow intro screens to be created without loading a MainMenu 2021-10-07 16:38:22 +09:00
OsuScreen.cs Handle potential for OnResuming call without an OnSuspending first 2021-09-16 16:31:41 +09:00
OsuScreenDependencies.cs Fix OsuScreenDependencies not caching non-leased versions 2019-12-13 20:05:54 +09:00
OsuScreenStack.cs Fix the default background parallax being set incorrectly when no screen is present 2021-09-17 18:14:39 +09:00
ScorePresentType.cs Update class exclusion for dynamic compilation 2020-09-04 20:41:08 +09:00
ScreenWhiteBox.cs Remove redundant arguments 2021-07-05 23:52:39 +08:00
StartupScreen.cs Remove unnecessary AllowTrackAdjustments overrides, add true to SongSelect 2021-09-15 13:12:57 +03:00