diff --git a/src/Orchard.Web/Modules/Orchard.MediaLibrary/MediaFileName/MediaFileNameDriver.cs b/src/Orchard.Web/Modules/Orchard.MediaLibrary/MediaFileName/MediaFileNameDriver.cs index ee345abbfc..70264811b6 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaLibrary/MediaFileName/MediaFileNameDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.MediaLibrary/MediaFileName/MediaFileNameDriver.cs @@ -61,9 +61,12 @@ protected override DriverResult Editor(MediaPart part, IUpdateModel updater, dyn try { _mediaLibraryService.RenameFile(part.FolderPath, priorFileName, model.FileName); part.FileName = model.FileName; - + _notifier.Add(NotifyType.Information, T("File '{0}' was renamed to '{1}'", priorFileName, model.FileName)); } + catch (OrchardException) { + updater.AddModelError("MediaFileNameEditorSettings.FileName", T("Unable to rename file. Invalid Windows file path.")); + } catch (Exception) { updater.AddModelError("MediaFileNameEditorSettings.FileName", T("Unable to rename file")); } diff --git a/src/Orchard/Validation/PathValidation.cs b/src/Orchard/Validation/PathValidation.cs index db2d3a37b3..3d0b5b864c 100644 --- a/src/Orchard/Validation/PathValidation.cs +++ b/src/Orchard/Validation/PathValidation.cs @@ -1,11 +1,13 @@ using System; using System.IO; +using Orchard.Localization; namespace Orchard.Validation { /// /// Provides methods to validate paths. /// public static class PathValidation { + /// /// Determines if a path lies within the base path boundaries. /// If not, an exception is thrown. @@ -26,7 +28,7 @@ public static string ValidatePath(string basePath, string mappedPath) { } if (!valid) { - throw new ArgumentException("Invalid path"); + throw new OrchardException(new LocalizedString("Invalid Path")); } return mappedPath;