diff options
| author | Erwin de Haan <1627021+EraYaN@users.noreply.github.com> | 2024-07-15 14:44:22 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-15 08:44:22 -0400 |
| commit | 3262f8dc2a7e8fb03ecd345eeca70bdb372389e3 (patch) | |
| tree | d3d3ac3eea26c0ef50d677b219b7f85ab8c41834 /Emby.Server.Implementations/Data/SqliteItemRepository.cs | |
| parent | c666f9d0501bbe0235315d2c2e668ec6f86eb345 (diff) | |
Add check for ProviderIds to prevent '=' from appearing in keys, also support '=' in the values. (#12274)
Diffstat (limited to 'Emby.Server.Implementations/Data/SqliteItemRepository.cs')
| -rw-r--r-- | Emby.Server.Implementations/Data/SqliteItemRepository.cs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Emby.Server.Implementations/Data/SqliteItemRepository.cs b/Emby.Server.Implementations/Data/SqliteItemRepository.cs index 81ee55d26..c2e3312ab 100644 --- a/Emby.Server.Implementations/Data/SqliteItemRepository.cs +++ b/Emby.Server.Implementations/Data/SqliteItemRepository.cs @@ -1046,9 +1046,10 @@ namespace Emby.Server.Implementations.Data foreach (var part in value.SpanSplit('|')) { var providerDelimiterIndex = part.IndexOf('='); - if (providerDelimiterIndex != -1 && providerDelimiterIndex == part.LastIndexOf('=')) + // Don't let empty values through + if (providerDelimiterIndex != -1 && part.Length != providerDelimiterIndex + 1) { - item.SetProviderId(part.Slice(0, providerDelimiterIndex).ToString(), part.Slice(providerDelimiterIndex + 1).ToString()); + item.SetProviderId(part[..providerDelimiterIndex].ToString(), part[(providerDelimiterIndex + 1)..].ToString()); } } } |
