* Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
* TextInfo.cs : To make new CultureInfo (127) as invariant, it should
not compare object Equals() against InvariantCulture.
svn path=/trunk/mcs/; revision=42597
+2005-04-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * TextInfo.cs : To make new CultureInfo (127) as invariant, it should
+ not compare object Equals() against InvariantCulture.
+
2005-04-05 Atsushi Enomoto <atsushi@ximian.com>
* TextInfo.cs : Fixed ToTitleCase() so that
// (enumerable enough).
public virtual char ToLower (char c)
{
- if (ci == CultureInfo.InvariantCulture)
+ if (ci.LCID == 0x7F)
return Char.ToLowerInvariant (c);
switch ((int) c) {
case '\u0049': // Latin uppercase I
CultureInfo tmp = ci;
- while (tmp.Parent != tmp && tmp.Parent != CultureInfo.InvariantCulture)
+ while (tmp.Parent != tmp && tmp.Parent.LCID != 0x7F)
tmp = tmp.Parent;
switch (tmp.LCID) {
case 44: // Azeri (az)
public virtual char ToUpper (char c)
{
- if (ci == CultureInfo.InvariantCulture)
+ if (ci.LCID == 0x7F)
return Char.ToUpperInvariant (c);
switch (c) {
case '\u0069': // Latin lowercase i
CultureInfo tmp = ci;
- while (tmp.Parent != tmp && tmp.Parent != CultureInfo.InvariantCulture)
+ while (tmp.Parent != tmp && tmp.Parent.LCID != 0x7F)
tmp = tmp.Parent;
switch (tmp.LCID) {
case 44: // Azeri (az)
+2005-04-06 Atsushi Enomoto <atsushi@ximian.com>
+
+ * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
+
2005-04-05 Sebastien Pouliot <sebastien@ximian.com>
* _AppDomain.cs: Add security checks to the interface. Declarative
unsafe {
if (c <= ((char)0x24cf))
return (char) to_lower_data_low [c];
- if (c >= ((char)0xff41))
- return (char) to_lower_data_high[c - 0xff41];
+ if (c >= ((char)0xff21))
+ return (char) to_lower_data_high[c - 0xff21];
}
return c;
}
internal static char ToUpperInvariant (char c)
{
unsafe {
- if (c <= ((char)0x24cf))
+ if (c <= ((char)0x24e9))
return (char) to_upper_data_low [c];
if (c >= ((char)0xff21))
return (char) to_upper_data_high [c - 0xff21];