diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-05-10 13:48:04 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-05-10 13:48:04 -0400 |
| commit | a0ed6ec96e60b18b3037cfe2a27d52c8a4962a34 (patch) | |
| tree | f3a72bccc613f29c630dd97e5107a78b9d77e402 | |
| parent | 2bb518027f7ac2b7606709b9c037f239fed3d5b5 (diff) | |
fixes #255 - Access to the path is denied.
| -rw-r--r-- | MediaBrowser.Server.Implementations/Providers/ProviderManager.cs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs b/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs index 12cc85912..1b684610d 100644 --- a/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs +++ b/MediaBrowser.Server.Implementations/Providers/ProviderManager.cs @@ -374,6 +374,14 @@ namespace MediaBrowser.Server.Implementations.Providers try { + // If the file already exists but is hidden, the below save will throw an UnauthorizedAccessException + var existingFileInfo = new FileInfo(localPath); + + if (existingFileInfo.Exists && existingFileInfo.Attributes.HasFlag(FileAttributes.Hidden)) + { + existingFileInfo.Delete(); + } + using (var fs = new FileStream(localPath, FileMode.Create, FileAccess.Write, FileShare.Read, StreamDefaults.DefaultFileStreamBufferSize, FileOptions.Asynchronous)) { await img.CopyToAsync(fs, StreamDefaults.DefaultCopyToBufferSize, cancellationToken).ConfigureAwait(false); |
