From b5bfeee027bd81716f166b5c6e532d7b119ea482 Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Fri, 5 May 2017 16:15:29 -0700 Subject: [PATCH] dotnet: FileSystemHost: fixes --- src/dotnet/FileSystemHost.cs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/dotnet/FileSystemHost.cs b/src/dotnet/FileSystemHost.cs index 7a409f96..94f55f80 100644 --- a/src/dotnet/FileSystemHost.cs +++ b/src/dotnet/FileSystemHost.cs @@ -239,7 +239,7 @@ namespace Fsp } /* FSP_FILE_SYSTEM_INTERFACE */ - private static Byte[] SecurityDescriptorNotNull = new Byte[0]; + private static Byte[] ByteBufferNotNull = new Byte[0]; private static Int32 ExceptionHandler( FileSystemBase FileSystem, Exception ex) @@ -301,7 +301,7 @@ namespace Fsp Byte[] SecurityDescriptorBytes = null; Int32 Result; if (IntPtr.Zero != PSecurityDescriptorSize) - SecurityDescriptorBytes = SecurityDescriptorNotNull; + SecurityDescriptorBytes = ByteBufferNotNull; Result = FileSystem.GetSecurityByName( FileName, out FileAttributes, @@ -680,13 +680,15 @@ namespace Fsp Byte[] SecurityDescriptorBytes; Int32 Result; Api.GetFullContext(ref FullContext, out FileNode, out FileDesc); - SecurityDescriptorBytes = SecurityDescriptorNotNull; + SecurityDescriptorBytes = ByteBufferNotNull; Result = FileSystem.GetSecurity( FileNode, FileDesc, ref SecurityDescriptorBytes); - return Api.CopySecurityDescriptor(SecurityDescriptorBytes, - SecurityDescriptor, PSecurityDescriptorSize); + if (0 <= Result) + Result = Api.CopySecurityDescriptor(SecurityDescriptorBytes, + SecurityDescriptor, PSecurityDescriptorSize); + return Result; } catch (Exception ex) {