Skip to content

Commit 23b23c9

Browse files
committed
Remove one usage of Unsafe.AsPointer. (dotnet#112079)
1 parent c023336 commit 23b23c9

File tree

1 file changed

+5
-9
lines changed

1 file changed

+5
-9
lines changed

src/mono/System.Private.CoreLib/src/System/Reflection/TypeNameResolver.Mono.cs

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ internal unsafe ref partial struct TypeNameResolver
1818
private Func<Assembly?, string, bool, Type?>? _typeResolver;
1919
private bool _throwOnError;
2020
private bool _ignoreCase;
21-
private void* _stackMark;
21+
private ref StackCrawlMark _stackMark;
2222

2323
[RequiresUnreferencedCode("The type might be removed")]
2424
internal static Type? GetType(
@@ -52,7 +52,7 @@ internal unsafe ref partial struct TypeNameResolver
5252
_typeResolver = typeResolver,
5353
_throwOnError = throwOnError,
5454
_ignoreCase = ignoreCase,
55-
_stackMark = Unsafe.AsPointer(ref stackMark)
55+
_stackMark = ref stackMark
5656
}.Resolve(parsed);
5757
}
5858

@@ -69,19 +69,17 @@ internal unsafe ref partial struct TypeNameResolver
6969
}
7070
else
7171
{
72-
ref StackCrawlMark stackMark = ref Unsafe.AsRef<StackCrawlMark>(_stackMark);
73-
7472
if (_throwOnError)
7573
{
76-
assembly = Assembly.Load(name, ref stackMark, null);
74+
assembly = Assembly.Load(name, ref _stackMark, null);
7775
}
7876
else
7977
{
8078
// When throwOnError is false we should only catch FileNotFoundException.
8179
// Other exceptions like BadImangeFormatException should still fly.
8280
try
8381
{
84-
assembly = Assembly.Load(name, ref stackMark, null);
82+
assembly = Assembly.Load(name, ref _stackMark, null);
8583
}
8684
catch (FileNotFoundException)
8785
{
@@ -123,9 +121,7 @@ internal unsafe ref partial struct TypeNameResolver
123121
{
124122
if (assembly is null)
125123
{
126-
ref StackCrawlMark stackMark = ref Unsafe.AsRef<StackCrawlMark>(_stackMark);
127-
128-
type = RuntimeType.GetType(escapedTypeName, _throwOnError, _ignoreCase, ref stackMark);
124+
type = RuntimeType.GetType(escapedTypeName, _throwOnError, _ignoreCase, ref _stackMark);
129125
}
130126
else
131127
{

0 commit comments

Comments
 (0)