Replace GetDirectories in CimDscParser (#14319)

This commit is contained in:
xtqqczze
2022-12-13 23:13:18 +05:00
committed by GitHub
parent bc3b0d60e6
commit 4ff581e906
@@ -3250,14 +3250,15 @@ namespace Microsoft.PowerShell.DesiredStateConfiguration.Internal
//
try
{
var dscResourceDirectories = Directory.GetDirectories(dscResourcesPath);
foreach (var directory in dscResourceDirectories)
foreach (var directory in Directory.EnumerateDirectories(dscResourcesPath))
{
var schemaFiles = Directory.GetFiles(directory, "*.schema.mof", SearchOption.TopDirectoryOnly);
if (schemaFiles.Length > 0)
IEnumerable<string> schemaFiles = Directory.EnumerateFiles(directory, "*.schema.mof", SearchOption.TopDirectoryOnly);
string tempSchemaFilepath = schemaFiles.FirstOrDefault();
Debug.Assert(schemaFiles.Count() == 1, "A valid DSCResource module can have only one schema mof file");
if (tempSchemaFilepath is not null)
{
Debug.Assert(schemaFiles.Length == 1, "A valid DSCResource module can have only one schema mof file");
var tempSchemaFilepath = schemaFiles[0];
var classes = GetCachedClassByFileName(tempSchemaFilepath) ?? ImportClasses(tempSchemaFilepath, new Tuple<string, Version>(module.Name, module.Version), errors);
if (classes != null)
{