summaryrefslogtreecommitdiff
path: root/src/vm/assemblyname.cpp
diff options
context:
space:
mode:
authorJan Kotas <jkotas@microsoft.com>2017-05-11 11:45:38 -0700
committerGitHub <noreply@github.com>2017-05-11 11:45:38 -0700
commit11dea52f9d82b19481e5a6df54263b85fb5663e2 (patch)
treed2bcf2f35e6bbd409c718d83256557a9f5c91910 /src/vm/assemblyname.cpp
parente52d80fa5b53fea51d18f03e441cf0c2fff58419 (diff)
downloadcoreclr-11dea52f9d82b19481e5a6df54263b85fb5663e2.tar.gz
coreclr-11dea52f9d82b19481e5a6df54263b85fb5663e2.tar.bz2
coreclr-11dea52f9d82b19481e5a6df54263b85fb5663e2.zip
Add back private BadImageFormatException constructor called by the VM (#11523)
Also removed rethrowing of an exception inside AssemblyName.GetAssemblyName that sometimes resulted into two identical exceptions getting nested into each other. Fixes #11499
Diffstat (limited to 'src/vm/assemblyname.cpp')
-rw-r--r--src/vm/assemblyname.cpp19
1 files changed, 5 insertions, 14 deletions
diff --git a/src/vm/assemblyname.cpp b/src/vm/assemblyname.cpp
index 90e2a467e1..6c8367e506 100644
--- a/src/vm/assemblyname.cpp
+++ b/src/vm/assemblyname.cpp
@@ -57,20 +57,11 @@ FCIMPL1(Object*, AssemblyNameNative::GetFileInformation, StringObject* filenameU
SString sFileName(gc.filename->GetBuffer());
PEImageHolder pImage = PEImage::OpenImage(sFileName, MDInternalImport_NoCache);
- EX_TRY
- {
- // Allow AssemblyLoadContext.GetAssemblyName for native images on CoreCLR
- if (pImage->HasNTHeaders() && pImage->HasCorHeader() && pImage->HasNativeHeader())
- pImage->VerifyIsNIAssembly();
- else
- pImage->VerifyIsAssembly();
- }
- EX_CATCH
- {
- Exception *ex = GET_EXCEPTION();
- EEFileLoadException::Throw(sFileName,ex->GetHR(),ex);
- }
- EX_END_CATCH_UNREACHABLE;
+ // Allow AssemblyLoadContext.GetAssemblyName for native images on CoreCLR
+ if (pImage->HasNTHeaders() && pImage->HasCorHeader() && pImage->HasNativeHeader())
+ pImage->VerifyIsNIAssembly();
+ else
+ pImage->VerifyIsAssembly();
SString sUrl = sFileName;
PEAssembly::PathToUrl(sUrl);