Make CoreRun probe for *.ni.exe files#25592
Conversation
dotnet#10525 regressed loading ni.exe files - after this change, the runtime no longer looks for the .ni.exe variants of .exe files because the .exe is considered trusted. This regression was worked around in dotnet#11272 for crossgen testing, but we still have tests (such as tests\src\readytorun\tests) that are now not testing anything because we're silently falling back to JIT. This makes corerun add both .exe and .ni.exe into the trusted assembly list.
|
@jkotas - what is coreconsole? Seems like it duplicates a bunch of code in corerun, including the part I'm modifying. Do I need to duplicate the fix there? Is coreconsole used? |
|
|
|
@MichalStrehovsky you'll need to modify the Unix version of corerun too. The code is in src/coreclr/hosts/unixcoreruncommon/unixcoreruncommon.cpp |
Oh wow, that code is the same, but also sufficiently different that it's not straightforward to port the Windows version. Also, it's not included in CoreCLR.sln so IntelliSense doesn't work. I'm going to go with a rollback instead - I wanted to do that initially anyway. If the rollback doesn't work out, I'll go through the pain of string manipulation in C++, writing code that I can't build/debug on Windows, and learning Unix filesystem APIs. Closing in favor of #25606. |
#10525 regressed loading ni.exe files - after that change, the runtime no longer looks for the .ni.exe variants of .exe files because the .exe is considered trusted.
This regression was worked around in #11272 for crossgen testing, but we still have tests (such as tests\src\readytorun\tests) that are now not testing anything because we're silently falling back to JIT.
This makes corerun add both .exe and .ni.exe into the trusted assembly list.