aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities/Folder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities/Folder.cs')
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs10
1 files changed, 7 insertions, 3 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index 252b4d0a8..d14ee2228 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -476,7 +476,7 @@ namespace MediaBrowser.Controller.Entities
{
get
{
- LazyInitializer.EnsureInitialized(ref _children, ref _childrenInitialized, ref _childrenSyncLock, LoadChildren);
+ LazyInitializer.EnsureInitialized(ref _children, ref _childrenInitialized, ref _childrenSyncLock, LoadChildrenInternal);
return _children;
}
private set
@@ -529,16 +529,20 @@ namespace MediaBrowser.Controller.Entities
}
}
+ private ConcurrentDictionary<Guid, BaseItem> LoadChildrenInternal()
+ {
+ return new ConcurrentDictionary<Guid, BaseItem>(LoadChildren().ToDictionary(i => i.Id));
+ }
/// <summary>
/// Loads our children. Validation will occur externally.
/// We want this sychronous.
/// </summary>
/// <returns>ConcurrentBag{BaseItem}.</returns>
- protected virtual ConcurrentDictionary<Guid, BaseItem> LoadChildren()
+ protected virtual IEnumerable<BaseItem> LoadChildren()
{
//just load our children from the repo - the library will be validated and maintained in other processes
- return new ConcurrentDictionary<Guid, BaseItem>(GetCachedChildren().ToDictionary(i => i.Id));
+ return GetCachedChildren();
}
/// <summary>