pull/13536/merge
tkloy24 3 weeks ago committed by GitHub
commit 7188d26075
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -2722,14 +2722,18 @@ namespace Emby.Server.Implementations.Library
if (current.IsDirectory && _namingOptions.AllExtrasTypesFolderNames.ContainsKey(current.Name))
{
var filesInSubFolder = _fileSystem.GetFiles(current.FullName, null, false, false);
foreach (var file in filesInSubFolder)
var filesInSubFolderList = filesInSubFolder.ToList();
bool subFolderIsMixedFolder = filesInSubFolderList.Count > 1;
foreach (var file in filesInSubFolderList)
{
if (!_extraResolver.TryGetExtraTypeForOwner(file.FullName, ownerVideoInfo, out var extraType))
{
continue;
}
var extra = GetExtra(file, extraType.Value);
var extra = GetExtra(file, extraType.Value, subFolderIsMixedFolder);
if (extra is not null)
{
yield return extra;
@ -2738,7 +2742,7 @@ namespace Emby.Server.Implementations.Library
}
else if (!current.IsDirectory && _extraResolver.TryGetExtraTypeForOwner(current.FullName, ownerVideoInfo, out var extraType))
{
var extra = GetExtra(current, extraType.Value);
var extra = GetExtra(current, extraType.Value, false);
if (extra is not null)
{
yield return extra;
@ -2746,7 +2750,7 @@ namespace Emby.Server.Implementations.Library
}
}
BaseItem? GetExtra(FileSystemMetadata file, ExtraType extraType)
BaseItem? GetExtra(FileSystemMetadata file, ExtraType extraType, bool isInMixedFolder)
{
var extra = ResolvePath(_fileSystem.GetFileInfo(file.FullName), directoryService, _extraResolver.GetResolversForExtraType(extraType));
if (extra is not Video && extra is not Audio)
@ -2769,6 +2773,7 @@ namespace Emby.Server.Implementations.Library
extra.ParentId = Guid.Empty;
extra.OwnerId = owner.Id;
extra.IsInMixedFolder = isInMixedFolder;
return extra;
}
}

Loading…
Cancel
Save