aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities/CollectionFolder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities/CollectionFolder.cs')
-rw-r--r--MediaBrowser.Controller/Entities/CollectionFolder.cs32
1 files changed, 32 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs
index 7d7d60ae5..b080478b8 100644
--- a/MediaBrowser.Controller/Entities/CollectionFolder.cs
+++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs
@@ -70,6 +70,38 @@ namespace MediaBrowser.Controller.Entities
/// <summary>
/// Our children are actually just references to the ones in the physical root...
/// </summary>
+ /// <value>The linked children.</value>
+ public override List<LinkedChild> LinkedChildren
+ {
+ get
+ {
+ ItemResolveArgs resolveArgs;
+
+ try
+ {
+ resolveArgs = ResolveArgs;
+ }
+ catch (IOException ex)
+ {
+ Logger.ErrorException("Error getting ResolveArgs for {0}", ex, Path);
+ return new List<LinkedChild>();
+ }
+
+ return LibraryManager.RootFolder.RecursiveChildren
+ .OfType<Folder>()
+ .Where(i => i.Path != null && resolveArgs.PhysicalLocations.Contains(i.Path, StringComparer.OrdinalIgnoreCase))
+ .SelectMany(c => c.LinkedChildren).ToList();
+
+ }
+ set
+ {
+ base.LinkedChildren = value;
+ }
+ }
+
+ /// <summary>
+ /// Our children are actually just references to the ones in the physical root...
+ /// </summary>
/// <value>The actual children.</value>
protected override ConcurrentDictionary<Guid, BaseItem> ActualChildren
{