diff options
author | Jan Kotas <jkotas@microsoft.com> | 2017-05-11 11:45:38 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-11 11:45:38 -0700 |
commit | 11dea52f9d82b19481e5a6df54263b85fb5663e2 (patch) | |
tree | d2bcf2f35e6bbd409c718d83256557a9f5c91910 /src/vm/assemblyname.cpp | |
parent | e52d80fa5b53fea51d18f03e441cf0c2fff58419 (diff) | |
download | coreclr-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.cpp | 19 |
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); |