Browse Source

#2691: Do not use AssemblyDefintion.GetAssemblyName().

This fails in culture-invariant mode (ilspycmd) when trying to work with satellite assemblies, because System.Reflection.AssemblyName tries to retrieve CultureInfo of the assembly culture.
pull/2693/head
Siegfried Pammer 3 years ago
parent
commit
c0f0135373
  1. 8
      ICSharpCode.Decompiler/Metadata/DotNetCorePathFinderExtensions.cs

8
ICSharpCode.Decompiler/Metadata/DotNetCorePathFinderExtensions.cs

@ -73,13 +73,13 @@ namespace ICSharpCode.Decompiler.Metadata
if (metadata.IsAssembly) if (metadata.IsAssembly)
{ {
var thisAssemblyName = metadata.GetAssemblyDefinition().GetAssemblyName(); AssemblyDefinition assemblyDefinition = metadata.GetAssemblyDefinition();
switch (thisAssemblyName.Name) switch (metadata.GetString(assemblyDefinition.Name))
{ {
case "mscorlib": case "mscorlib":
return $".NETFramework,Version=v{thisAssemblyName.Version.ToString(2)}"; return $".NETFramework,Version=v{assemblyDefinition.Version.ToString(2)}";
case "netstandard": case "netstandard":
return $".NETStandard,Version=v{thisAssemblyName.Version.ToString(2)}"; return $".NETStandard,Version=v{assemblyDefinition.Version.ToString(2)}";
} }
} }

Loading…
Cancel
Save