osu/osu.Game
Dean Herbert 80c2b1449b Fix API request potentially firing failed events after completion
Specifically, `Cancel()` calls were not thread safe. Due to a series of
events, `ListPollingComponent` could call `Cancel` from a non-update
thread, leading to a race condition where both a `Success` and `Fail`
event can be fired.

This is intended to be the simplest fix possible, locking and guarding
specifically on the callbacks. Further work could be done in the future
to improve the flow surrounding `pendingFailure`, potentially reducing
redundant work and cleaning up the code, but that's not happening here.

Closes https://github.com/ppy/osu/issues/13632.
2021-07-19 20:27:01 +09:00
..
Audio
Beatmaps Preserve Y position of hit objects in osu!catch 2021-07-14 14:38:38 +09:00
Collections Schedule callback instead 2021-06-23 21:26:52 +09:00
Configuration Update usages of IHasTooltip in line with framework localisation changes 2021-06-25 19:10:04 +02:00
Database Handle nulls and fix missing documentation 2021-07-05 21:35:37 +09:00
Extensions Merge branch 'master' into skin-editor-closest-anchor 2021-06-18 18:54:07 +09:00
Graphics Correct code style 2021-07-17 21:37:58 +08:00
Input Move handling of replay seek operations out of progress bar 2021-07-09 14:28:59 +09:00
IO Fix storage wrapping logic setting logger too early in startup sequence 2021-07-09 13:18:49 +09:00
IPC
Localisation Add localisation support for remaining input settings sections 2021-07-16 23:03:55 +09:00
Migrations
Online Fix API request potentially firing failed events after completion 2021-07-19 20:27:01 +09:00
Overlays Merge branch 'localisation-base' of https://github.com/kj415j45/osu into localisation-base 2021-07-17 21:19:14 +08:00
Performance Remove high performance GC setting 2021-06-20 17:07:41 +09:00
Properties
Replays
Rulesets Merge pull request #13887 from ekrctb/legacy-converted-y 2021-07-19 18:48:23 +09:00
Scoring Replace calls to obsoleted GetOrDefault() extension 2021-07-18 21:52:16 +02:00
Screens Merge pull request #13926 from peppy/set-rank-on-failed-submission 2021-07-19 18:45:21 +09:00
Skinning Add missing ToArray() call 2021-07-07 14:08:29 +09:00
Storyboards Default DrawableStoryboard to a completed state to avoid state change on empty storyboards 2021-06-18 16:08:49 +09:00
Tests Merge pull request #13823 from ekrctb/catch-editor-tests 2021-07-13 08:27:41 +09:00
Updater Remove some mentions of "lazer" 2021-07-04 12:41:27 +09:00
Users Update usages of IHasTooltip in line with framework localisation changes 2021-06-25 19:10:04 +02:00
Utils Ensure duplicate mods cannot be defined 2021-06-22 17:41:20 +09:00
.editorconfig Add .editorconfig for localisation analyser 2021-07-06 14:54:56 +09:00
osu!.res
osu.Game.csproj Bump LocalisationAnalyser for new key generation 2021-07-16 23:03:55 +09:00
OsuGame.cs Remove IApplicableToDifficulty.ReadFromDifficulty 2021-07-14 12:32:16 +09:00
OsuGameBase_Importing.cs
OsuGameBase.cs Remove some mentions of "lazer" 2021-07-04 12:41:27 +09:00
PerformFromMenuRunner.cs