diff --git a/src/BUTR.CrashReport.Renderer.Html/CrashReportHtml.cs b/src/BUTR.CrashReport.Renderer.Html/CrashReportHtml.cs index 7337cc6..082c0b5 100644 --- a/src/BUTR.CrashReport.Renderer.Html/CrashReportHtml.cs +++ b/src/BUTR.CrashReport.Renderer.Html/CrashReportHtml.cs @@ -525,7 +525,7 @@ void AppendAssembly(AssemblyModel assembly) .AppendIf(!isDynamic, sb => sb.Append(assembly.Hash).Append(", ")) .AppendIf(isDynamic && !hasPath, "DYNAMIC") .AppendIf(!isDynamic && !hasPath, "EMPTY") - .AppendIf(!isDynamic && hasPath, sb => sb.Append("...").Append(Path.DirectorySeparatorChar).Append(assembly.AnonymizedPath).Append("")) + .AppendIf(!isDynamic && hasPath, sb => sb.Append("").Append(assembly.AnonymizedPath).Append("")) .Append(""); } @@ -547,7 +547,7 @@ void AppendNative(NativeAssemblyModel assembly) .Append(assembly.Id.Name).Append(", ") .Append(assembly.Id.Version).Append(", ") .Append(assembly.Architecture.ToString()).Append(", ") - .Append("...").Append(Path.DirectorySeparatorChar).Append(assembly.AnonymizedPath).Append("") + .Append("").Append(assembly.AnonymizedPath).Append("") .Append(""); } diff --git a/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.07.Assemblies.cs b/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.07.Assemblies.cs index bb54428..1a3f379 100644 --- a/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.07.Assemblies.cs +++ b/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.07.Assemblies.cs @@ -6,7 +6,6 @@ using ImGuiNET; using System.Collections.Generic; -using System.IO; namespace BUTR.CrashReport.Renderer.ImGui.Renderer; @@ -27,8 +26,8 @@ private class AssemblyModelEqualityComparer : IEqualityComparer private static bool _hideLoaderAssemblies; private static bool _hideLoaderPluginsAssemblies; private static bool _hideDynamicAssemblies; + private static bool _hideUnclassifiedAssemblies; - private readonly Dictionary _assemblyPathUtf8 = new(AssemblyModelEqualityComparer.Instance); private readonly Dictionary _assemblyFullNameUtf8 = new(AssemblyModelEqualityComparer.Instance); private static readonly byte[][] _architectureTypeNames = @@ -46,7 +45,6 @@ private void InitializeAssemblies() for (var i = 0; i < _crashReport.Assemblies.Count; i++) { var assembly = _crashReport.Assemblies[i]; - _assemblyPathUtf8[assembly] = UnsafeHelper.ToUtf8Array($"..{Path.DirectorySeparatorChar}{assembly.AnonymizedPath}"); _assemblyFullNameUtf8[assembly] = UnsafeHelper.ToUtf8Array(assembly.GetFullName()); } } @@ -62,7 +60,8 @@ private void RenderAssemblies() _imgui.CheckboxSameLine(" Modules | \0"u8, ref _hideModulesAssemblies); _imgui.CheckboxSameLine(" Loader | \0"u8, ref _hideLoaderAssemblies); _imgui.CheckboxSameLine(" Loader Plugins | \0"u8, ref _hideLoaderPluginsAssemblies); - _imgui.Checkbox(" Dynamic \0"u8, ref _hideDynamicAssemblies); + _imgui.CheckboxSameLine(" Dynamic \0"u8, ref _hideDynamicAssemblies); + _imgui.Checkbox(" Unclassified | \0"u8, ref _hideUnclassifiedAssemblies); _imgui.PopStyleVar(); for (var i = 0; i < _crashReport.Assemblies.Count; i++) @@ -76,6 +75,7 @@ private void RenderAssemblies() if (_hideLoaderAssemblies && assembly.Type.IsSet(AssemblyModelType.Loader)) continue; if (_hideLoaderPluginsAssemblies && assembly.Type.IsSet(AssemblyModelType.LoaderPlugin)) continue; if (_hideDynamicAssemblies && assembly.Type.IsSet(AssemblyModelType.Dynamic)) continue; + if (_hideUnclassifiedAssemblies && assembly.Type == AssemblyModelType.Unclassified) continue; var isDynamic = assembly.Type.IsSet(AssemblyModelType.Dynamic); var hasPath = assembly.AnonymizedPath != "EMPTY" && assembly.AnonymizedPath != "DYNAMIC" && !string.IsNullOrWhiteSpace(assembly.AnonymizedPath); @@ -94,7 +94,7 @@ private void RenderAssemblies() if (hasPath) { _imgui.TextSameLine(", \0"u8); - _imgui.SmallButton(_assemblyPathUtf8[assembly]); + _imgui.SmallButton(assembly.AnonymizedPath); } else { diff --git a/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.08.Native.cs b/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.08.Native.cs index 64497eb..aca118e 100644 --- a/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.08.Native.cs +++ b/src/BUTR.CrashReport.Renderer.ImGui/Renderer/ImGuiRenderer.08.Native.cs @@ -27,17 +27,8 @@ private class NativeAssemblyModelEqualityComparer : IEqualityComparer _nativePathUtf8 = new(NativeAssemblyModelEqualityComparer.Instance); - - private void InitializeNatives() - { - for (var i = 0; i < _crashReport.NativeModules.Count; i++) - { - var native = _crashReport.NativeModules[i]; - _nativePathUtf8[native] = UnsafeHelper.ToUtf8Array($"..{Path.DirectorySeparatorChar}{native.AnonymizedPath}"); - } - } + + private void InitializeNatives() { } private void RenderNatives() { @@ -54,7 +45,7 @@ private void RenderNatives() _imgui.TextSameLine(", \0"u8); _imgui.TextSameLine(assembly.Hash); _imgui.TextSameLine(", \0"u8); - _imgui.SmallButton(_nativePathUtf8[assembly]); + _imgui.SmallButton(assembly.AnonymizedPath); } } } \ No newline at end of file