[Mono-dev] System.dll few patches for review

Andreas Nahr ClassDevelopment at A-SoftTech.com
Fri Oct 6 07:36:59 EDT 2006


Care to explain why? I'm aware that Invariant will be (invariant-culture) 
sensitive, however it IMHO would fix the bug.
I also agree that using String.Compare with OrdinalIgnoreCase would be the 
best option, however unfortunatelly that is .Net 2.0 only.

String.CompareOrdinal() is obviously obviously a no-go because it would be 
case-sensitive and as I already wrote CompareOptions are 2.0 only.

Happy hacking
Andreas

P.S.
If I'd design a new .Net Framework the first thing would be to create two 
Classes: (System)String and LanguageString.


> You are still wrong :-) InvariantCulture still causes culture
> sensitive comparison.
>
> Use String.CompareOrdinal() or CompareOptions.Ordinal instead.
>
> Atsushi Eno
>
> Andreas Nahr wrote:
>> Sorry if this is already handled, just looked over the list and found 
>> this
>> bug:
>>
>>>> Index: System.Net/DigestClient.cs
>>>> ===================================================================
>>>> --- System.Net/DigestClient.cs (revision 66034)
>>>> +++ System.Net/DigestClient.cs (working copy)
>>>> @@ -248,9 +248,9 @@
>>>>  return false;
>>>>  }
>>>>
>>>> - // build the hash object (only MD5 is defined in RFC2617)
>>>> - if ((parser.Algorithm == null) || (parser.Algorithm.ToUpper
>>>> ().StartsWith ("MD5")))
>>>> - hash = HashAlgorithm.Create ("MD5");
>>>> + // build the hash object (only MD5 is defined in RFC2617)
>>>> + if ((parser.Algorithm == null) || (parser.Algorithm.ToUpper
>>>> ().StartsWith ("MD5")))
>>>> + hash = MD5.Create ();
>>>>
>>>>  return true;
>>>>  }
>>
>> Algorithm.ToUpper ().StartsWith ("MD5"))) is most likely wrong because 
>> the
>> code is doing a culture-sensitive uppercasing.
>> You should use something like ToUpperInvariant or pass the Invariant 
>> Culture
>> (or better if possible: one of the case-insensitive compares)
>>
>> I didn't look into the relevant classes, but there may be more similar
>> occurences of that problem.
>>
>> mfg
>> Andreas
>>
>> _______________________________________________
>> Mono-devel-list mailing list
>> Mono-devel-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
> 




More information about the Mono-devel-list mailing list