Skip to content

Commit e827b76

Browse files
Fix hash case (#2094)
1 parent 45a8414 commit e827b76

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

src/Sentry/Internal/Extensions/HashExtensions.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ namespace Sentry.Internal.Extensions;
22

33
internal static class HashExtensions
44
{
5-
public static string GetHashString(this string str)
5+
public static string GetHashString(this string str, bool upperCase = true)
66
{
77
var bytes = Encoding.UTF8.GetBytes(str);
88
using var sha = SHA1.Create();
99
var hash = sha.ComputeHash(bytes);
10-
return hash.ToHexString();
10+
return hash.ToHexString(upperCase);
1111
}
1212
}

src/Sentry/Internal/Extensions/MiscExtensions.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,27 @@ internal static class MiscExtensions
99
? value
1010
: null;
1111

12-
public static string ToHexString(this long l) => "0x" + l.ToString("x", CultureInfo.InvariantCulture);
12+
public static string ToHexString(this long l, bool upperCase = false) =>
13+
"0x" + l.ToString("x", CultureInfo.InvariantCulture);
1314

14-
public static string ToHexString(this byte[] bytes) => new ReadOnlySpan<byte>(bytes).ToHexString();
15+
public static string ToHexString(this byte[] bytes, bool upperCase = false) =>
16+
new ReadOnlySpan<byte>(bytes).ToHexString(upperCase);
1517

16-
public static string ToHexString(this Span<byte> bytes) => ((ReadOnlySpan<byte>)bytes).ToHexString();
18+
public static string ToHexString(this Span<byte> bytes, bool upperCase = false) =>
19+
((ReadOnlySpan<byte>)bytes).ToHexString(upperCase);
1720

18-
public static string ToHexString(this ReadOnlySpan<byte> bytes)
21+
public static string ToHexString(this ReadOnlySpan<byte> bytes, bool upperCase = false)
1922
{
2023
#if NET5_0_OR_GREATER
21-
return Convert.ToHexString(bytes).ToLowerInvariant();
24+
var s = Convert.ToHexString(bytes);
25+
return upperCase ? s : s.ToLowerInvariant();
2226
#else
2327
var buffer = new StringBuilder(bytes.Length * 2);
28+
var format = upperCase ? "X2" : "x2";
2429

2530
foreach (var t in bytes)
2631
{
27-
buffer.Append(t.ToString("x2", CultureInfo.InvariantCulture));
32+
buffer.Append(t.ToString(format, CultureInfo.InvariantCulture));
2833
}
2934

3035
return buffer.ToString();

0 commit comments

Comments
 (0)