Assembly.get_location() returns an empty string for assemblies loaded from memory.
Assembly.InternalGetSatelliteAssembly uses that location string directly in a call to Path.GetDirectoryName, which then fails with: System.ArgumentException: Invalid path
This is unexpected behavior.
** Test case **
Created attachment 10722 [details]
Test case from the previous github url, so we can keep the test case here
At least my Mono version d86446f from April 2nd has this problem.
It is more likely caused by a recent change in resource lookup:
From March 23rd
I sent a PR that fixes this bug (I forgot to link it here): https://github.com/mono/mono/pull/1693
As stated in the PR description, I'm not sure if this is a sensible solution to the problem. I.e. if it follows reference .NET behavior.
Fixed in master