Browse Source

update sharpcifs

Luke Pulverenti 8 năm trước cách đây
mục cha
commit
6c60656dad

+ 20 - 5
Emby.Common.Implementations/IO/SharpCifsFileSystem.cs

@@ -166,23 +166,38 @@ namespace Emby.Common.Implementations.IO
         public void SetHidden(string path, bool isHidden)
         public void SetHidden(string path, bool isHidden)
         {
         {
             var file = CreateSmbFile(path);
             var file = CreateSmbFile(path);
+            SetHidden(file, isHidden);
+        }
+
+        public void SetReadOnly(string path, bool isReadOnly)
+        {
+            var file = CreateSmbFile(path);
+            SetReadOnly(file, isReadOnly);
+        }
+
+        public void SetAttributes(string path, bool isHidden, bool isReadOnly)
+        {
+            var file = CreateSmbFile(path);
+            SetHidden(file, isHidden);
+            SetReadOnly(file, isReadOnly);
+        }
 
 
+        private void SetHidden(SmbFile file, bool isHidden)
+        {
             var isCurrentlyHidden = file.IsHidden();
             var isCurrentlyHidden = file.IsHidden();
 
 
             if (isCurrentlyHidden && !isHidden)
             if (isCurrentlyHidden && !isHidden)
             {
             {
-                file.SetAttributes(file.GetAttributes() & ~SmbFile.AttrReadonly);
+                file.SetAttributes(file.GetAttributes() & ~SmbFile.AttrHidden);
             }
             }
             else if (!isCurrentlyHidden && isHidden)
             else if (!isCurrentlyHidden && isHidden)
             {
             {
-                file.SetAttributes(file.GetAttributes() | SmbFile.AttrReadonly);
+                file.SetAttributes(file.GetAttributes() | SmbFile.AttrHidden);
             }
             }
         }
         }
 
 
-        public void SetReadOnly(string path, bool isReadOnly)
+        private void SetReadOnly(SmbFile file, bool isReadOnly)
         {
         {
-            var file = CreateSmbFile(path);
-
             var isCurrentlyReadOnly = !file.CanWrite();
             var isCurrentlyReadOnly = !file.CanWrite();
 
 
             if (isCurrentlyReadOnly && !isReadOnly)
             if (isCurrentlyReadOnly && !isReadOnly)