From 74b9e9f93d99cb798f513e001d850f4c2f5c3d43 Mon Sep 17 00:00:00 2001 From: mriehm <3916550+mriehm@users.noreply.github.com> Date: Thu, 10 Jul 2025 21:02:35 -0500 Subject: [PATCH] Fix EtwProfiler for file paths slightly under 260 chars --- src/BenchmarkDotNet/Helpers/ArtifactFileNameHelper.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/BenchmarkDotNet/Helpers/ArtifactFileNameHelper.cs b/src/BenchmarkDotNet/Helpers/ArtifactFileNameHelper.cs index 6873bb834b..d98ca46e58 100644 --- a/src/BenchmarkDotNet/Helpers/ArtifactFileNameHelper.cs +++ b/src/BenchmarkDotNet/Helpers/ArtifactFileNameHelper.cs @@ -18,7 +18,7 @@ internal static class ArtifactFileNameHelper internal static string GetTraceFilePath(DiagnoserActionParameters details, DateTime creationTime, string fileExtension) { - return GetFilePath(details, null, creationTime, fileExtension, "userheap.etl".Length); + return GetFilePath(details, null, creationTime, fileExtension, "userheap.etl".Length - fileExtension.Length); } internal static string GetFilePath(DiagnoserActionParameters details, string? subfolder, DateTime? creationTime, string fileExtension, int reserve) @@ -27,7 +27,7 @@ internal static string GetFilePath(DiagnoserActionParameters details, string? su // long paths can be enabled on Windows but it does not mean that everything is going to work fine.. // so we always use 260 as limit on Windows - int limit = OsDetector.IsWindows() + int limit = OsDetector.IsWindows() ? WindowsOldPathLimit - reserve : CommonSenseLimit;