diff options
-rw-r--r-- | reflect/Fusion.cs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/reflect/Fusion.cs b/reflect/Fusion.cs index bc083239..c4bef4a7 100644 --- a/reflect/Fusion.cs +++ b/reflect/Fusion.cs @@ -219,15 +219,17 @@ namespace IKVM.Reflection } bool fxUnified = false; - bool versionMatch = version1 == version2; + + // build and revision numbers are ignored + bool fxVersionMatch = version1.Major == version2.Major && version1.Minor == version2.Minor; if (IsFrameworkAssembly(name1)) { - fxUnified |= !versionMatch; + fxUnified |= !fxVersionMatch; version1 = FrameworkVersion; } if (IsFrameworkAssembly(name2) && version2 < FrameworkVersionNext) { - fxUnified |= !versionMatch; + fxUnified |= !fxVersionMatch; version2 = FrameworkVersion; } @@ -274,7 +276,7 @@ namespace IKVM.Reflection return false; } } - else if (!versionMatch || fxUnified) + else if (fxUnified || version1 != version2) { result = partial ? AssemblyComparisonResult.EquivalentPartialFXUnified : AssemblyComparisonResult.EquivalentFXUnified; return true; |