Commit Graph

39945 Commits

Author SHA1 Message Date
166974506e Duplicate implementions 2021-05-15 11:55:50 +08:00
6e5c4ed7c6 Revert "Remove empty override"
This reverts commit a86a4bab91.
2021-05-15 11:45:14 +08:00
63ac430386 Rename startTime in parameters 2021-05-15 11:26:16 +08:00
7632b8621e Merge pull request #12805 from peppy/add-user-id-beatmap-metadata
Add database tracking of beatmap creator `user_id`s
2021-05-15 09:03:52 +09:00
cb9db0da0a Merge pull request #12801 from peppy/null-assignment-warning-enable
Switch null assignment to non-nullable entity warnings on
2021-05-15 09:03:03 +09:00
7665bdfbbb Merge branch 'master' into null-assignment-warning-enable 2021-05-15 01:08:34 +02:00
69fc072429 Ignore skin component json data if deserialisation fails instead
Crashing was not really the best thing to do there given the preceding
code that already allowed a few continues in case of a missing file.
2021-05-15 01:08:11 +02:00
ae71389ebe Ignore possible nulls from stream reader in IPC
Any failures will be caught. They're not logged, but they also weren't
before. Error handling can be improved at a future date, this series of
changes is primarily intending to unblock a new inspection.
2021-05-15 00:09:34 +02:00
d581e0a252 Ignore possible nulls in NotifyCollectionChangedArgs
Safe to access by the virtue of the preceding case labels on
`args.Action`.  And they're in test code anyways.
2021-05-15 00:09:34 +02:00
e62e473bb2 Ignore possible null in multiplayer test
A null value will fail the test anyhow.
2021-05-15 00:09:34 +02:00
b51d038088 Ignore possible path-related nulls
They're all in test code anyway, so any issue there will cause a test to
fail.
2021-05-15 00:09:34 +02:00
fa6b5515b7 Ignore possible null from JsonConvert.DeserializeObject()
Nothing better can be done if a `null` is indeed returned.
2021-05-15 00:09:34 +02:00
5b2b701915 Ignore possible null in GetResponseString()
A null there indicates a deserialisation error and therefore due to the
catch block immediately succeeding the changed line everything will
continue to work as intended.
2021-05-15 00:09:34 +02:00
628e7a71ed Ignore possible nulls in Type.GetType() calls
They're mostly used in extensibility scenarios, so everything happens in
runtime. There is no better resolution than to crash with a null
reference exception.
2021-05-15 00:09:34 +02:00
43c73f9583 Mark access to exception if task faulted as safe
There are seemingly no C#-side compile-time guarantees that it is safe,
but if the task's state is `Faulted` (as is checked right before), the
exception cannot be null as per the documentation.
2021-05-15 00:09:34 +02:00
f2d0f7db99 Remove list null-checks in LogoTrackingContainer test
If the null-checks were tripped, the test would crash anyway. It is not
possible to call `.Any()` and get a valid result instead of an exception
on a null reference.
2021-05-15 00:09:34 +02:00
483e0dd943 Pass placeholder hitobject instead of null 2021-05-15 00:09:34 +02:00
f716fb0968 Remove bogus InternalChildren null-check
`InternalChildren` can't viably be `null`, and if it were, we have
bigger problems. The removed null-check was triggering false-positive
inspections further down.
2021-05-15 00:09:34 +02:00
c9facf70f9 Use conditional nullability attribute
As it turns out, C# 8 provides an attribute that allows annotating that
an `out` parameter's nullability depends on the method's return value,
which is exactly what is desired here.
2021-05-15 00:09:34 +02:00
be50abeb7e Merge pull request #12806 from peppy/fix-deleting-skin-elements 2021-05-15 07:08:43 +09:00
aaa7c7eb05 Handle null case explicitly in SpectatorState.Equals()
Uses the usual pattern of two `ReferenceEquals` checks against `this`
and `null` before proceeding to inspect field values. Doing this causes
the compiler to infer that at the point that field values are checked,
`other` can no longer viably be `null`.
2021-05-14 23:58:07 +02:00
044770f1a2 Locally suppress warning in SerializationReader
`SerializationReader` is not written in a form that would support
turning nullability checking on for the entire class. The biggest
problem there is the inner `DynamicDeserializer` static class, whose
members are initialised via an `initialize()` method, which the compiler
knows nothing about.

For this reason, just opt to suppress the single inspection about
returning a `null` from a method with a return type of `string` (rider
expects `string?`). It would have been also viable to enable nullability
checking for this one method, but that's pretty much the same thing and
adds no safety anyways, so just disable the warning to minimise
surprise.
2021-05-14 23:29:34 +02:00
94d80f091f Merge branch 'master' into fix-deleting-skin-elements 2021-05-14 22:33:41 +02:00
3d3c5028e6 Trim unnecessary array copy 2021-05-14 22:33:26 +02:00
743b4fbff1 Pass correct member name to ArgumentExceptions 2021-05-14 22:16:37 +02:00
876f53bf3b Fix copy-paste oversights in xmldoc & exception messages 2021-05-14 22:15:43 +02:00
1c92b3a8f5 De-duplicate star rating display creation in test 2021-05-14 22:03:44 +02:00
8b4e6d2911 Remove no longer necessary FinishTransforms(true) call
As the component no longer has any transition transforms applied.
2021-05-14 22:03:35 +02:00
a4c1b9a1a7 Rename startTime to fadeStartTime 2021-05-14 21:56:13 +08:00
a86a4bab91 Remove empty override 2021-05-14 21:55:32 +08:00
393ac4fdd1 Destruct declaration 2021-05-14 21:30:58 +08:00
67dfeeb1b7 Cleanup code in ModHidden 2021-05-14 21:29:13 +08:00
7c2fc9b412 Update usage due to nullability removal 2021-05-14 16:12:33 +03:00
93007c1635 Merge branch 'current-star-rating' into player-loader-star-rating 2021-05-14 16:06:00 +03:00
6cc678f497 Remove nullability and transition support from star rating display 2021-05-14 16:05:40 +03:00
0dc3bfd0c1 Apply simple transforms to star rating display when ready if not 2021-05-14 15:55:26 +03:00
db361efecf Add test beatmap difficulty cache with calc. blocking support 2021-05-14 15:53:56 +03:00
e0728a6e19 Make BeatmapDifficultyCache.GetDifficultyAsync virtual 2021-05-14 15:52:36 +03:00
a1d63243a4 Merge pull request #12800 from frenzibyte/online-play-oversight
Fix online play subscreens not pushing player loaders when starting gameplay
2021-05-14 20:44:44 +09:00
34aab11ff3 Add null star rating display test case 2021-05-14 14:25:46 +03:00
0655825057 Separate changing star rating display to own test 2021-05-14 14:25:13 +03:00
f5dd18f266 Use existing LoadedBeatmapSuccessfully bool instead
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-05-14 16:53:51 +09:00
67a99c83a3 Tidy bindable changed code up 2021-05-14 16:24:52 +09:00
fcb226bd20 Add local variable for regular access to HitObjects 2021-05-14 16:23:45 +09:00
9069db0743 Fix case of hitObjects variables 2021-05-14 16:22:19 +09:00
d09da02673 Fix deleting skin elements not saving out to skin
Closes https://github.com/ppy/osu/issues/12786.
2021-05-14 16:03:22 +09:00
32ff406289 Add database tracking of beatmap creator user_ids 2021-05-14 15:40:29 +09:00
8338f702c3 Remove not required null conditional 2021-05-14 09:32:56 +03:00
dc576c19b4 Fix a potential nullref when starting Player with autoplay enabled and beatmap fails to load 2021-05-14 15:10:02 +09:00
48672f8afd Add very basic test logic to ensure PlayerLoader is present for playlists 2021-05-14 15:02:36 +09:00