|
|
|
@ -510,8 +510,8 @@ namespace Emby.Server.Implementations.Library
|
|
|
|
|
return key.GetMD5();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseItem ResolvePath(FileSystemMetadata fileInfo, Folder parent = null)
|
|
|
|
|
=> ResolvePath(fileInfo, new DirectoryService(_fileSystem), null, parent);
|
|
|
|
|
public BaseItem ResolvePath(FileSystemMetadata fileInfo, Folder parent = null, bool allowIgnorePath = true)
|
|
|
|
|
=> ResolvePath(fileInfo, new DirectoryService(_fileSystem), null, parent, allowIgnorePath: allowIgnorePath);
|
|
|
|
|
|
|
|
|
|
private BaseItem ResolvePath(
|
|
|
|
|
FileSystemMetadata fileInfo,
|
|
|
|
@ -519,7 +519,8 @@ namespace Emby.Server.Implementations.Library
|
|
|
|
|
IItemResolver[] resolvers,
|
|
|
|
|
Folder parent = null,
|
|
|
|
|
string collectionType = null,
|
|
|
|
|
LibraryOptions libraryOptions = null)
|
|
|
|
|
LibraryOptions libraryOptions = null,
|
|
|
|
|
bool allowIgnorePath = true)
|
|
|
|
|
{
|
|
|
|
|
if (fileInfo == null)
|
|
|
|
|
{
|
|
|
|
@ -543,7 +544,7 @@ namespace Emby.Server.Implementations.Library
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// Return null if ignore rules deem that we should do so
|
|
|
|
|
if (IgnoreFile(args.FileInfo, args.Parent))
|
|
|
|
|
if (allowIgnorePath && IgnoreFile(args.FileInfo, args.Parent))
|
|
|
|
|
{
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
@ -707,7 +708,9 @@ namespace Emby.Server.Implementations.Library
|
|
|
|
|
|
|
|
|
|
Directory.CreateDirectory(rootFolderPath);
|
|
|
|
|
|
|
|
|
|
var rootFolder = GetItemById(GetNewItemId(rootFolderPath, typeof(AggregateFolder))) as AggregateFolder ?? ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(rootFolderPath))).DeepCopy<Folder, AggregateFolder>();
|
|
|
|
|
var rootFolder = GetItemById(GetNewItemId(rootFolderPath, typeof(AggregateFolder))) as AggregateFolder ??
|
|
|
|
|
((Folder) ResolvePath(_fileSystem.GetDirectoryInfo(rootFolderPath), allowIgnorePath: false))
|
|
|
|
|
.DeepCopy<Folder, AggregateFolder>();
|
|
|
|
|
|
|
|
|
|
// In case program data folder was moved
|
|
|
|
|
if (!string.Equals(rootFolder.Path, rootFolderPath, StringComparison.Ordinal))
|
|
|
|
@ -788,7 +791,7 @@ namespace Emby.Server.Implementations.Library
|
|
|
|
|
if (tmpItem == null)
|
|
|
|
|
{
|
|
|
|
|
_logger.LogDebug("Creating new userRootFolder with DeepCopy");
|
|
|
|
|
tmpItem = ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(userRootPath))).DeepCopy<Folder, UserRootFolder>();
|
|
|
|
|
tmpItem = ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(userRootPath), allowIgnorePath: false)).DeepCopy<Folder, UserRootFolder>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// In case program data folder was moved
|
|
|
|
|