Skip to content

Commit a96dd0d

Browse files
fix: EnumerateFiles attempt 4
1 parent c6f5e87 commit a96dd0d

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

src/Arius.Core/Shared/FileSystem/FilePairFileSystem.cs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,8 +107,18 @@ private IEnumerable<FileEntry> EnumerateFiles(DirectoryEntry directory, SearchOp
107107
var directoryInfo = new DirectoryInfo(directory.FileSystem.ConvertPathToInternal(directory.Path));
108108
foreach (var fe in EnumerateFiles(directoryInfo, searchOption))
109109
{
110-
var fileEntry = new FileEntry(directory.FileSystem, directory.FileSystem.ConvertPathFromInternal(fe.FullName));
111-
yield return fileEntry;
110+
FileEntry? fileEntryNullable = null;
111+
try
112+
{
113+
fileEntryNullable = new FileEntry(directory.FileSystem, directory.FileSystem.ConvertPathFromInternal(fe.FullName));
114+
}
115+
catch (ArgumentException ex) when (ex.Message.Contains("Invalid character"))
116+
{
117+
logger.LogWarning("Skipping file {File} because its path contains invalid characters: {ExceptionMessage}", fe.FullName, ex.Message);
118+
}
119+
120+
if (fileEntryNullable is not null)
121+
yield return fileEntryNullable;
112122
}
113123

114124

0 commit comments

Comments
 (0)