On Dec 7, 2013, at 2:10 AM, [email protected] wrote:

> http://anonsvn.wireshark.org/viewvc/viewvc.cgi?view=rev&revision=53819
> 
> User: darkjames
> Date: 2013/12/07 10:10 AM
> 
> Log:
> Add new string proto encoding for windows-1250 (ENC_WINDOWS_1250)
> 
> - Move windows-1250 to unicode encoding table to charset.c
> - Add tvb_get_string_unichar2, tvb_get_stringz_unichar2 functions which 
> recode tvb-string to UTF-8.

Note that

        
https://developer.gnome.org/glib/stable/glib-Unicode-Manipulation.html#gunichar2

says of a gunichar2 that it is

        A type which can hold any UTF-16 code point[4].

with the footnote:

        
https://developer.gnome.org/glib/stable/glib-Unicode-Manipulation.html#ftn.utf16_surrogate_pairs

saying

        [4] surrogate pairs

This means that a gunichar2 can hold either

        1) a character from the Basic Multilingual Plane (BMP) of Unicode:

                
https://en.wikipedia.org/wiki/Basic_Multilingual_Plane#Basic_Multilingual_Plane

or

        2) a surrogate pair:

                
https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B10000_to_U.2B10FFFF

so those routines can handle only encodings that don't include characters 
outside the BMP.

This is probably true of most non-Unicode encodings, such as the ISO 8859-n 
encodings, so it's OK for them, but be careful when using them.
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <[email protected]>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:[email protected]?subject=unsubscribe

Reply via email to