aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-23 20:04:18 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-23 20:04:18 -0400
commit14c464c28a3b9cac207ef741711e31cef1c15378 (patch)
tree46bcf42028fc461bbf69bc41eba9cef7b5942911
parentcbd767ddcef7a857fb48d1cdb13e79e0ebf201b7 (diff)
check attributes before saving over image file
-rw-r--r--MediaBrowser.Server.Implementations/Providers/ImageSaver.cs12
1 files changed, 12 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs b/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs
index 608738f7f..d8872f318 100644
--- a/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs
+++ b/MediaBrowser.Server.Implementations/Providers/ImageSaver.cs
@@ -102,6 +102,18 @@ namespace MediaBrowser.Server.Implementations.Providers
using (source)
{
+ // If the file is currently hidden we'll have to remove that or the save will fail
+ var file = new FileInfo(path);
+
+ // This will fail if the file is hidden
+ if (file.Exists)
+ {
+ if ((file.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
+ {
+ file.Attributes &= ~FileAttributes.Hidden;
+ }
+ }
+
using (var fs = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read, StreamDefaults.DefaultFileStreamBufferSize, FileOptions.Asynchronous))
{
await source.CopyToAsync(fs, StreamDefaults.DefaultCopyToBufferSize, cancellationToken).ConfigureAwait(false);