1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 23:32:55 +08:00
osu-lazer/osu.Game/Graphics
Bartłomiej Dach 718cbf9382
Fix SegmentedGraph draw node calculating segment colours in unsafe manner
The `SegmentedGraph`'s draw node would call `getSegmentColour()`
on the drawable, which would query the `DrawColourInfo` and
`tierColours` properties of the drawable. This is a cross-thread access
and as such completely unsafe, as due to being cross-thread it can die
on invalidations or out-of-bounds accesses.

Fix by transferring everything to the draw node first before attempting
to draw. `SegmentedGraph.TierColours` setter already correctly
invalidates the draw node via `graphNeedsUpdate`, so no further
intervention was required there.

Closes #22326.
2023-01-21 23:19:34 +01:00
..
Backgrounds Remove unused renderer 2022-11-30 04:56:07 +03:00
Containers Fix game overlays not blocking scroll properly 2023-01-10 21:01:06 +03:00
Cursor Clamp SFX panning on results screen 2022-12-16 17:19:07 +09:00
OpenGL/Vertices Adjust using directives for vertices 2022-08-05 20:37:33 +09:00
Sprites Partial everything 2022-11-27 00:00:27 +09:00
UserInterface Fix SegmentedGraph draw node calculating segment colours in unsafe manner 2023-01-21 23:19:34 +01:00
UserInterfaceV2 Fix manual input manager test scenes not matching game input hierarchy 2023-01-10 15:35:26 -08:00
DateTooltip.cs Use LocalisableStrings for date and time formats 2022-12-16 00:05:47 +01:00
DrawableDate.cs Partial everything 2022-11-27 00:00:27 +09:00
ErrorTextFlowContainer.cs Partial everything 2022-11-27 00:00:27 +09:00
HSPAColour.cs Fix HSPAColour.ToColour not being pure 2022-11-06 23:35:51 +09:00
IHasAccentColour.cs Automated #nullable processing 2022-06-17 16:37:17 +09:00
InputBlockingContainer.cs Partial everything 2022-11-27 00:00:27 +09:00
OsuColour.cs Remove obsoleted "ForDifficultyRating" method 2022-12-26 16:16:52 +01:00
OsuFont.cs Automated #nullable processing 2022-06-17 16:37:17 +09:00
OsuIcon.cs Automated #nullable processing 2022-06-17 16:37:17 +09:00
ParticleExplosion.cs Partial everything 2022-11-27 00:00:27 +09:00
ParticleSpewer.cs Partial everything 2022-11-27 00:00:27 +09:00
ScreenshotManager.cs Ensure screenshot filenames are unique by locking over file creation 2023-01-10 01:37:16 +09:00