Skip to content

Commit

Permalink
Don't resolve desktop Microsoft.VisualBasic.dll from Core
Browse files Browse the repository at this point in the history
Fixes #347
  • Loading branch information
KirillOsenkov committed Jun 10, 2024
1 parent 70bb81c commit 795708a
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion ILRepack/RepackAssemblyResolver.cs
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,18 @@ private AssemblyDefinition TryResolve(AssemblyNameReference name, ReaderParamete
systemRuntimeVersion = name.Version;
}

bool resolveFromCoreFirst = IsFrameworkName(name.Name) && name.Version > netcoreVersionBoundary;

// see https://github.com/gluck/il-repack/issues/347
if (name.Name.Equals("Microsoft.VisualBasic", StringComparison.OrdinalIgnoreCase) && name.Version.Major <= 10)
{
resolveFromCoreFirst = false;
}

// heuristic: assembly more likely to be Core after that version.
// Try to resolve from Core first to prevent the base resolver
// from resolving Core assemblies from the GAC
if (IsFrameworkName(name.Name) && name.Version > netcoreVersionBoundary)
if (resolveFromCoreFirst)
{
var fromCore = TryResolveFromCoreFixVersion(name);
if (fromCore != null)
Expand Down

0 comments on commit 795708a

Please sign in to comment.