Do not reset online information when saving beatmap #31747
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is more or less a direct revert of #23362. That was supposed to be a quick fixup of an exploitable situation, that sort of outlived its usefulness.
The reason why I'm coming back to it now out of all times is that... I need this gone for BSS. For beatmaps that are actively being worked on, stripping out the online IDs every time the beatmap set is saved means that a submitted beatmap just... cannot be updated by the creator anymore.
Since that initial PR mentioned above, we've tightened down checks extensively via means of changes such as:
WorkingBeatmapCachecaching beatmap in wrong state leading to crash #27239After making this change I've red-teamed a few ways I could think of wherein I could modify a beatmap and checking whether things still behave as expected, and I was not able to produce a scenario affecting an
.osufile that would result in a bogus score submission.However, note that all of these checks pertain to the MD5 of the
.osufile only and do nothing for things like swapping backgrounds or audio. Whether they should, is up for debate; #31745 is relevant here in that extent.This also incidentally fixes #27783 which regressed at some point because the string changed osu-web side. Probably wasn't noticed by anyone because this was probably not hittable by anyone without some major shenanigans before this change.