1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-11 17:47:29 +08:00
osu-lazer/osu.Game/Online
Bartłomiej Dach fe86ee629e Fix temp files from beatmap listing imports not being cleaned up
As reported in #12718, it turns out that temporary files from beatmap
set downloads performed via the beatmap listing overlay could remain in
the user's filesystem even after the download has concluded.

The reason for the issue is a failure in component integration.
In the case of online downloads, files are first downloaded to a
temporary directory (`C:/Temp` or `/tmp`), with a randomly generated
filename, which ends in an extension of `.tmp`.

On the other side, `ArchiveModelManager`s have a `ShouldDeleteArchive()`
method, which determines whether a file should be deleted after
importing. At the time of writing, in the case of beatmap imports the
file is only automatically cleaned up if the extension of the file is
equal to `.osz`, which was not the case for temporary files.

As it turns out, `APIDownloadRequest` has a facility for adjusting the
file's extension, via the protected `FileExtension` property. Therefore,
use it in the case of `DownloadBeatmapSetRequest` to specify `.osz`,
which then will make sure that the `ShouldDeleteArchive()` check in
`BeatmapManager` picks it up for clean-up.
2021-05-08 17:09:14 +02:00
..
API Fix temp files from beatmap listing imports not being cleaned up 2021-05-08 17:09:14 +02:00
Chat Fix system messages always being displayed above standard messages 2021-04-22 14:52:01 +09:00
Leaderboards Fix crash 2021-04-04 09:44:45 +08:00
Multiplayer Fix playing users not being updated on room join 2021-04-22 23:23:43 +09:00
Placeholders Create ClickablePlaceholder and make of use it where applicable. 2020-04-23 14:01:47 +02:00
Rooms Fix typo in class name 2021-04-07 16:45:10 +09:00
Solo Fix scores not being accepted due to missing ruleset ID 2021-04-09 15:18:02 +09:00
Spectator Fix potential doubling of events 2021-04-20 21:20:08 +09:00
DevelopmentEndpointConfiguration.cs Add website root URL and update most links to use it 2020-12-24 18:11:42 +09:00
DownloadState.cs Rename download state Downloaded to Importing 2021-01-13 18:04:53 +03:00
DownloadTrackingComposite.cs Always set progress before updating download state 2021-03-26 14:04:10 +09:00
EndpointConfiguration.cs Add website root URL and update most links to use it 2020-12-24 18:11:42 +09:00
HubClientConnector.cs Apply ConfigureAwait changes to game side 2021-03-08 14:36:35 +09:00
IHubClientConnector.cs Move HubClientConnector retrieval to IAPIProvider 2021-02-15 16:43:56 +09:00
OnlineViewContainer.cs Allow creating OnlineViewContainers with no placeholder button 2021-04-06 16:17:20 +09:00
PollingComponent.cs Make TimeBetweenPolls into a bindable 2020-12-20 18:34:54 +09:00
ProductionEndpointConfiguration.cs Add website root URL and update most links to use it 2020-12-24 18:11:42 +09:00