X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2Fcorlib%2FSystem.Reflection%2FAssemblyName.cs;h=9da34563f241ccf3e575df1e5acc425dfae28f90;hb=ac194553049b2eeb328f5fc54b708da9b95f4d88;hp=5436dc663afe114bb9ddeb6e3070db95b76b420a;hpb=3f3ef7225cbabdae584723e5d77974d2e1c67d6c;p=mono.git diff --git a/mcs/class/corlib/System.Reflection/AssemblyName.cs b/mcs/class/corlib/System.Reflection/AssemblyName.cs index 5436dc663af..9da34563f24 100644 --- a/mcs/class/corlib/System.Reflection/AssemblyName.cs +++ b/mcs/class/corlib/System.Reflection/AssemblyName.cs @@ -75,7 +75,8 @@ namespace System.Reflection { ProcessorArchitecture processor_architecture = ProcessorArchitecture.None; #endregion #pragma warning restore 169 - + + AssemblyContentType contentType; public AssemblyName () { // defaults @@ -323,16 +324,16 @@ namespace System.Reflection { return token; } - [MonoTODO] public static bool ReferenceMatchesDefinition (AssemblyName reference, AssemblyName definition) { if (reference == null) throw new ArgumentNullException ("reference"); if (definition == null) throw new ArgumentNullException ("definition"); - if (reference.Name != definition.Name) - return false; - throw new NotImplementedException (); + + // we only compare the simple assembly name to be consistent with MS .NET, + // which is the result of a bug in their implementation (see https://connect.microsoft.com/VisualStudio/feedback/details/752902) + return string.Equals (reference.Name, definition.Name, StringComparison.OrdinalIgnoreCase); } public void SetPublicKey (byte[] publicKey) @@ -386,6 +387,7 @@ namespace System.Reflection { an.publicKey = publicKey; an.keyToken = keyToken; an.versioncompat = versioncompat; + an.processor_architecture = processor_architecture; return an; } @@ -427,26 +429,20 @@ namespace System.Reflection { } #endif -#if NET_4_5 public string CultureName { get { - if (cultureinfo == null) - return string.Empty; - else if (cultureinfo.LCID == CultureInfo.InvariantCulture.LCID) - return "neutral"; - else - return cultureinfo.Name; + return (cultureinfo == null)? null : cultureinfo.Name; } } [ComVisibleAttribute(false)] public AssemblyContentType ContentType { - get { return AssemblyContentType.Default; } + get { + return contentType; + } set { - if (value != AssemblyContentType.Default) - throw new InvalidOperationException (); + contentType = value; } } -#endif } }