diff --git a/Directory.Packages.props b/Directory.Packages.props index cad50dc2fa..31651e827c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -58,7 +58,7 @@ - + @@ -97,4 +97,4 @@ - + \ No newline at end of file diff --git a/NOTICE.md b/NOTICE.md index f42a4df475..cc27673b7d 100644 --- a/NOTICE.md +++ b/NOTICE.md @@ -1343,7 +1343,7 @@ EXHIBIT A -Mozilla Public License. - NLog.Extensions.Logging 5.3.8 - NLog.Schema 5.2.8 - ScipBe.Common.Office.OneNote 3.0.1 -- SharpCompress 0.33.0 +- SharpCompress 0.37.2 - StreamJsonRpc 2.14.24 - StyleCop.Analyzers 1.2.0-beta.556 - System.CodeDom 8.0.0 diff --git a/src/modules/peek/Peek.FilePreviewer/Previewers/Archives/ArchivePreviewer.cs b/src/modules/peek/Peek.FilePreviewer/Previewers/Archives/ArchivePreviewer.cs index 87b3494bf4..737799ed19 100644 --- a/src/modules/peek/Peek.FilePreviewer/Previewers/Archives/ArchivePreviewer.cs +++ b/src/modules/peek/Peek.FilePreviewer/Previewers/Archives/ArchivePreviewer.cs @@ -5,7 +5,6 @@ using System; using System.Collections.Generic; using System.Collections.ObjectModel; -using System.Data; using System.Globalization; using System.IO; using System.Linq; @@ -28,6 +27,8 @@ namespace Peek.FilePreviewer.Previewers.Archives { public partial class ArchivePreviewer : ObservableObject, IArchivePreviewer { + private static readonly char[] _keySeparators = { '/', '\\' }; + private readonly IconCache _iconCache = new(); private int _directoryCount; private int _fileCount; @@ -125,10 +126,12 @@ namespace Peek.FilePreviewer.Previewers.Archives { ArgumentNullException.ThrowIfNull(entry, nameof(entry)); - var levels = entry!.Key - .Split('/', '\\') - .Where(l => !string.IsNullOrWhiteSpace(l)) - .ToArray(); + if (entry.Key == null) + { + return; + } + + var levels = entry.Key.Split(_keySeparators, StringSplitOptions.RemoveEmptyEntries); ArchiveItem? parent = null; for (var i = 0; i < levels.Length; i++) @@ -209,7 +212,7 @@ namespace Peek.FilePreviewer.Previewers.Archives private static readonly HashSet _supportedFileTypes = new() { - ".zip", ".rar", ".7z", ".tar", ".nupkg", ".jar", ".gz", ".tar", ".tar.gz", ".tgz", + ".zip", ".rar", ".7z", ".tar", ".nupkg", ".jar", ".gz", ".tar.gz", ".tgz", }; } }