internal override FileSystemInfo CreateObject(SearchResult result) { bool isFile = FileSystemEnumerableHelpers.IsFile(result.FindData); bool isDir = FileSystemEnumerableHelpers.IsDir(result.FindData); if (isDir) { String name = result.FullPath; String permissionName = name + "\\."; FileSecurityState state = new FileSecurityState(FileSecurityStateAccess.Read, String.Empty, permissionName); state.EnsureState(); DirectoryInfo di = new DirectoryInfo(name, false); di.InitializeFrom(result.FindData); return(di); } else { Debug.Assert(isFile); String name = result.FullPath; FileSecurityState state = new FileSecurityState(FileSecurityStateAccess.Read, String.Empty, name); state.EnsureState(); FileInfo fi = new FileInfo(name, false); fi.InitializeFrom(result.FindData); return(fi); } }
internal override FileSystemInfo CreateObject(SearchResult result) { FileSystemEnumerableHelpers.IsFile(result.FindData); if (FileSystemEnumerableHelpers.IsDir(result.FindData)) { string fullPath = result.FullPath; new FileIOPermission(FileIOPermissionAccess.Read, new string[1] { fullPath + "\\." }, false, false).Demand(); DirectoryInfo directoryInfo = new DirectoryInfo(fullPath, false); Win32Native.WIN32_FIND_DATA findData = result.FindData; directoryInfo.InitializeFrom(findData); return((FileSystemInfo)directoryInfo); } string fullPath1 = result.FullPath; new FileIOPermission(FileIOPermissionAccess.Read, new string[1] { fullPath1 }, false, false).Demand(); FileInfo fileInfo = new FileInfo(fullPath1, false); Win32Native.WIN32_FIND_DATA findData1 = result.FindData; fileInfo.InitializeFrom(findData1); return((FileSystemInfo)fileInfo); }
internal override FileSystemInfo CreateObject(SearchResult result) { bool isFile = FileSystemEnumerableHelpers.IsFile(result.FindData); bool isDir = FileSystemEnumerableHelpers.IsDir(result.FindData); if (isDir) { DirectoryInfo di = new DirectoryInfo(result.FullPath, false); di.InitializeFrom(result.FindData); return(di); } else { Contract.Assert(isFile); FileInfo fi = new FileInfo(result.FullPath, false); fi.InitializeFrom(result.FindData); return(fi); } }
internal override FileSystemInfo CreateObject(SearchResult result) { FileSystemEnumerableHelpers.IsFile(result.FindData); if (FileSystemEnumerableHelpers.IsDir(result.FindData)) { string str = result.FullPath; string str2 = str + @"\."; string[] strArray = new string[] { str2 }; new FileIOPermission(FileIOPermissionAccess.Read, strArray, false, false).Demand(); DirectoryInfo info = new DirectoryInfo(str, false); info.InitializeFrom(result.FindData); return(info); } string fullPath = result.FullPath; string[] pathList = new string[] { fullPath }; new FileIOPermission(FileIOPermissionAccess.Read, pathList, false, false).Demand(); FileInfo info2 = new FileInfo(fullPath, false); info2.InitializeFrom(result.FindData); return(info2); }
internal override FileSystemInfo CreateObject(SearchResult result) { bool isFile = FileSystemEnumerableHelpers.IsFile(result.FindData); bool isDir = FileSystemEnumerableHelpers.IsDir(result.FindData); if (isDir) { String name = result.FullPath; String permissionName = name + "\\."; #if FEATURE_CORECLR FileSecurityState state = new FileSecurityState(FileSecurityStateAccess.Read, String.Empty, permissionName); state.EnsureState(); #else String[] permissionNames = new String[] { permissionName }; new FileIOPermission(FileIOPermissionAccess.Read, permissionNames, false, false).Demand(); #endif DirectoryInfo di = new DirectoryInfo(name, false); di.InitializeFrom(result.FindData); return(di); } else { Contract.Assert(isFile); String name = result.FullPath; #if FEATURE_CORECLR FileSecurityState state = new FileSecurityState(FileSecurityStateAccess.Read, String.Empty, name); state.EnsureState(); #else String[] names = new String[] { name }; new FileIOPermission(FileIOPermissionAccess.Read, names, false, false).Demand(); #endif FileInfo fi = new FileInfo(name, false); fi.InitializeFrom(result.FindData); return(fi); } }