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.cs18
1 files changed, 16 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index 4f3c87508..472cc115e 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -92,13 +92,27 @@ namespace MediaBrowser.Controller.Entities
/// <exception cref="System.InvalidOperationException">Unable to add + item.Name</exception>
public async Task AddChild(BaseItem item, CancellationToken cancellationToken)
{
+ item.Parent = this;
+
+ if (item.Id == Guid.Empty)
+ {
+ item.Id = item.Path.GetMBId(item.GetType());
+ }
+
+ if (item.DateCreated == DateTime.MinValue)
+ {
+ item.DateCreated = DateTime.Now;
+ }
+ if (item.DateModified == DateTime.MinValue)
+ {
+ item.DateModified = DateTime.Now;
+ }
+
if (!_children.TryAdd(item.Id, item))
{
throw new InvalidOperationException("Unable to add " + item.Name);
}
- item.Parent = this;
-
var newChildren = Children.ToList();
await LibraryManager.CreateItem(item, cancellationToken).ConfigureAwait(false);