[Mono-dev] [PATCHES] Bug 480178 - System.Globalization.CharUnicodeInfo.GetUnicodeCategory() does not handle surrogate characters appropriately.

Damien Diederen dd at crosstwine.com
Fri Jun 4 09:06:48 EDT 2010


Hi Miguel,

I finally had an opportunity to look into this, and just uploaded v5 of
this series:

  - The non-BMP portions of the tables are omitted when the
    preprocessor symbol DISABLE_ASTRAL is defined;

  - The runtime now supports two sets of tables, one for 2.0–3.5 and
    one for 4.0.  This second set can be omitted by defining
    DISABLE_NET_4_0.

Cf. https://bugzilla.novell.com/show_bug.cgi?id=480178#c42 & following.

Cheers, -D

Miguel de Icaza <miguel at novell.com> writes:
>> That can certainly be done.  I suppose you envision a compile-time
>> switch?  Is there already such an option/flag/preprocessor symbol I
>> should use as a model?
>
> For C code, just use the symbol DISABLE_ASTRAL, then we can add that to
> configure.in
>
>> Sure.  I guess this means some more compile-time conditionalization of
>> the runtime; corlib can just pass a version parameter at class init time
>> as in v3 of my patches:
>> 
>> #if NET_4_0
>> 		private const int CategoryDataVersion = 4;
>> #else
>> 		private const int CategoryDataVersion = 2;
>> #endif
>
> Exactly right;   
> Miguel

-- 
http://crosstwine.com
tel:  +49 89 2189 2939
cell: +49 174 3489 428

“Strong Opinions, Weakly Held”
                 — Bob Johansen


More information about the Mono-devel-list mailing list