aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBond-009 <bond.009@outlook.com>2023-08-27 10:17:30 +0200
committerGitHub <noreply@github.com>2023-08-27 10:17:30 +0200
commit3b07d73d405f3d7217e8d84aa7259fc0f9bb279e (patch)
treed527c6823e46556686d62b4914282c4fa207673f
parent1f083c0de2a1be669c2af7e77cd4e7313ee8f449 (diff)
parentee83e4cca56d086476b5cb6f92d931fb9bbb677f (diff)
Merge pull request #10154 from goremykin/multiple-enumerations
-rw-r--r--Emby.Server.Implementations/Library/LibraryManager.cs2
-rw-r--r--MediaBrowser.Providers/Manager/ProviderManager.cs20
2 files changed, 4 insertions, 18 deletions
diff --git a/Emby.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs
index 8f88113b7..808cedd67 100644
--- a/Emby.Server.Implementations/Library/LibraryManager.cs
+++ b/Emby.Server.Implementations/Library/LibraryManager.cs
@@ -358,7 +358,7 @@ namespace Emby.Server.Implementations.Library
var children = item.IsFolder
? ((Folder)item).GetRecursiveChildren(false)
- : Enumerable.Empty<BaseItem>();
+ : Array.Empty<BaseItem>();
foreach (var metadataPath in GetMetadataPaths(item, children))
{
diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs
index 5cb28402e..f3211ba45 100644
--- a/MediaBrowser.Providers/Manager/ProviderManager.cs
+++ b/MediaBrowser.Providers/Manager/ProviderManager.cs
@@ -765,10 +765,12 @@ namespace MediaBrowser.Providers.Manager
{
try
{
- var results = await GetSearchResults(provider, searchInfo.SearchInfo, cancellationToken).ConfigureAwait(false);
+ var results = await provider.GetSearchResults(searchInfo.SearchInfo, cancellationToken).ConfigureAwait(false);
foreach (var result in results)
{
+ result.SearchProviderName = provider.Name;
+
var existingMatch = resultList.FirstOrDefault(i => i.ProviderIds.Any(p => string.Equals(result.GetProviderId(p.Key), p.Value, StringComparison.OrdinalIgnoreCase)));
if (existingMatch is null)
@@ -800,22 +802,6 @@ namespace MediaBrowser.Providers.Manager
return resultList;
}
- private async Task<IEnumerable<RemoteSearchResult>> GetSearchResults<TLookupType>(
- IRemoteSearchProvider<TLookupType> provider,
- TLookupType searchInfo,
- CancellationToken cancellationToken)
- where TLookupType : ItemLookupInfo
- {
- var results = await provider.GetSearchResults(searchInfo, cancellationToken).ConfigureAwait(false);
-
- foreach (var item in results)
- {
- item.SearchProviderName = provider.Name;
- }
-
- return results;
- }
-
private IEnumerable<IExternalId> GetExternalIds(IHasProviderIds item)
{
return _externalIds.Where(i =>