Preventing exceptions when monitoring shape templates

--HG--
branch : 1.x
This commit is contained in:
Sebastien Ros
2012-11-15 12:19:34 -08:00
parent c048ff51d9
commit 9e329c4c4c

View File

@@ -70,6 +70,9 @@ namespace Orchard.DisplayManagement.Descriptors.ShapeTemplateStrategy {
var basePath = Path.Combine(extensionDescriptor.Location, extensionDescriptor.Id).Replace(Path.DirectorySeparatorChar, '/'); var basePath = Path.Combine(extensionDescriptor.Location, extensionDescriptor.Id).Replace(Path.DirectorySeparatorChar, '/');
var virtualPath = Path.Combine(basePath, subPath).Replace(Path.DirectorySeparatorChar, '/'); var virtualPath = Path.Combine(basePath, subPath).Replace(Path.DirectorySeparatorChar, '/');
var fileNames = _cacheManager.Get(virtualPath, ctx => { var fileNames = _cacheManager.Get(virtualPath, ctx => {
if (!_virtualPathProvider.DirectoryExists(virtualPath))
return new List<string>();
ctx.Monitor(_virtualPathMonitor.WhenPathChanges(virtualPath)); ctx.Monitor(_virtualPathMonitor.WhenPathChanges(virtualPath));
return _virtualPathProvider.ListFiles(virtualPath).Select(Path.GetFileName).ToReadOnlyCollection(); return _virtualPathProvider.ListFiles(virtualPath).Select(Path.GetFileName).ToReadOnlyCollection();
}); });