Even when fixed to the US locale (and thus avoiding surprising behaviour in e.g. Turkish locale with "i" and "I") there are unexpected behaviours when upper and lower casing non-ASCII characters. For example it's sometimes not symmetric, e.g.: "ẞ".toLowerCase() -> "ß" "ß".toUpperCase() -> "SS" In all the ExoPlayer usages we are either dealing with known-ASCII strings (e.g. MIME types) or comparing against ASCII constant strings anyway, so it seems easier to just use Guava's ASCII-only class in these cases. Util.toUpperInvariant() is null-tolerant, while Ascii.toLowercase() is not. Most usages in this change are clearly non-null. The BandwidthMeter usages aren't annotated @Nullable, but the current code *would* work if countryCode was null in both cases. These methods will now throw NPE if they're passed null. PiperOrigin-RevId: 368816287
| Name |
Last commit
|
Last Update |
|---|---|---|
| .. | ||
| all | Loading commit data... | |
| common | Loading commit data... | |
| core | Loading commit data... | |
| dash | Loading commit data... | |
| extractor | Loading commit data... | |
| hls | Loading commit data... | |
| smoothstreaming | Loading commit data... | |
| transformer | Loading commit data... | |
| ui | Loading commit data... | |
| README.md | Loading commit data... |