1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-11 23:47:24 +08:00
osu-lazer/osu.Game/Online/API
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
..
Requests Remove redundant arguments 2021-07-05 23:52:39 +08:00
APIAccess.cs Ignore possible null in GetResponseString() 2021-05-15 00:09:34 +02:00
APIDownloadRequest.cs Make TriggerSuccess(filename) protected and expose in test instead 2021-01-17 22:10:30 +03:00
APIException.cs Fix API request potentially firing failed events after completion 2021-07-19 20:27:01 +09:00
APIMessagesRequest.cs Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
APIMod.cs Take current mod settings value into account on equality comparsion 2021-04-12 20:51:13 +03:00
APIRequest.cs Fix API request potentially firing failed events after completion 2021-07-19 20:27:01 +09:00
APIRequestCompletionState.cs Fix API request potentially firing failed events after completion 2021-07-19 20:27:01 +09:00
ArchiveDownloadRequest.cs Enforce one missed property back to single-floating type 2021-01-18 22:07:25 +03:00
DummyAPIAccess.cs Add return bool to HandleRequest to better trigger failures 2021-03-23 18:17:29 +09:00
IAPIProvider.cs Add missing nullability flag on CreateAccount return value 2021-02-15 17:02:07 +09:00
ModSettingsDictionaryFormatter.cs Extract mod setting value handling to utils class 2021-04-12 03:37:03 +03:00
OAuth.cs Fix json web requests having incorrect user agents 2020-01-17 19:21:27 +09:00
OAuthToken.cs Merge branch 'master' into more-inspections 2019-02-28 14:32:57 +09:00
OsuJsonWebRequest.cs Fix json web requests having incorrect user agents 2020-01-17 19:21:27 +09:00
OsuWebRequest.cs Fix user agent missing in registration 2020-01-16 12:51:43 +09:00
RegistrationRequest.cs Fix user agent missing in registration 2020-01-16 12:51:43 +09:00