Browse Source

#1445: Fix NRE if BAML file is loaded outside of its original context.

pull/1505/head
Siegfried Pammer 6 years ago
parent
commit
4088170f46
  1. 8
      ILSpy.BamlDecompiler/Xaml/XamlType.cs

8
ILSpy.BamlDecompiler/Xaml/XamlType.cs

@ -67,10 +67,12 @@ namespace ILSpy.BamlDecompiler.Xaml { @@ -67,10 +67,12 @@ namespace ILSpy.BamlDecompiler.Xaml {
xmlNs = ctx.TryGetXmlNamespace(Assembly, TypeNamespace);
if (xmlNs == null) {
if (Assembly.FullAssemblyName == ctx.TypeSystem.MainModule.FullAssemblyName)
if (FullAssemblyName == ctx.TypeSystem.MainModule.FullAssemblyName)
xmlNs = $"clr-namespace:{TypeNamespace}";
else
xmlNs = $"clr-namespace:{TypeNamespace};assembly={Assembly.Name}";
else {
var name = ICSharpCode.Decompiler.Metadata.AssemblyNameReference.Parse(FullAssemblyName);
xmlNs = $"clr-namespace:{TypeNamespace};assembly={name.Name}";
}
var nsSeg = TypeNamespace.Split('.');
var prefix = nsSeg[nsSeg.Length - 1].ToLowerInvariant();

Loading…
Cancel
Save