summaryrefslogtreecommitdiff
path: root/src/vm/assemblynative.cpp
diff options
context:
space:
mode:
authorSteve MacLean <stmaclea@microsoft.com>2019-04-21 18:25:04 -0400
committerGitHub <noreply@github.com>2019-04-21 18:25:04 -0400
commita36bc61442d89d0b5c58b0b14e7bd3bde218f24d (patch)
tree2b81845ab584a090b66f8d5490e7d91a506f118d /src/vm/assemblynative.cpp
parentc48969221da787abaa0c6f1477ec9c864f0455d2 (diff)
downloadcoreclr-a36bc61442d89d0b5c58b0b14e7bd3bde218f24d.tar.gz
coreclr-a36bc61442d89d0b5c58b0b14e7bd3bde218f24d.tar.bz2
coreclr-a36bc61442d89d0b5c58b0b14e7bd3bde218f24d.zip
Fix AssemblyName cache hash and key (#24138)
* Add ContextualReflection LoadWithPartialName case * Remove unnecessary MethodImplOptions.NoInlining * Remove m_assembly warning * Fix AssemblyName hash function * AssemblyNative::Load fix stackMark usage Do not use the stackMark if (ptrLoadContextBinder != NULL) * Temporarily disable DefaultContextOverrideTPA Test is failing due to a logic error. Fix is pending in https://github.com/dotnet/corefx/pull/37071
Diffstat (limited to 'src/vm/assemblynative.cpp')
-rw-r--r--src/vm/assemblynative.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/vm/assemblynative.cpp b/src/vm/assemblynative.cpp
index aa830932ed..cc95151408 100644
--- a/src/vm/assemblynative.cpp
+++ b/src/vm/assemblynative.cpp
@@ -78,18 +78,18 @@ FCIMPL6(Object*, AssemblyNative::Load, AssemblyNameBaseObject* assemblyNameUNSAF
else
{
// Compute parent assembly
- if (gc.requestingAssembly == NULL)
+ if (gc.requestingAssembly != NULL)
{
- pRefAssembly = SystemDomain::GetCallersAssembly(stackMark);
+ pRefAssembly = gc.requestingAssembly->GetAssembly();
}
- else
+ else if (ptrLoadContextBinder == NULL)
{
- pRefAssembly = gc.requestingAssembly->GetAssembly();
+ pRefAssembly = SystemDomain::GetCallersAssembly(stackMark);
}
if (pRefAssembly)
{
- pParentAssembly= pRefAssembly->GetDomainAssembly();
+ pParentAssembly = pRefAssembly->GetDomainAssembly();
}
}