Browse Source

fixed alias and encoding mapping for emoji logo.

pull/7/head
Rui Hirokawa 14 years ago
parent
commit
9e7cc71167
  1. 21
      ext/mbstring/libmbfl/filters/mbfilter_sjis_mobile.c
  2. 2
      ext/mbstring/libmbfl/filters/mbfilter_sjis_mobile.h
  3. 4
      ext/mbstring/libmbfl/filters/mbfilter_utf8_mobile.c

21
ext/mbstring/libmbfl/filters/mbfilter_sjis_mobile.c

@ -52,7 +52,7 @@ const mbfl_encoding mbfl_encoding_sjis_docomo = {
mbfl_no_encoding_sjis_docomo,
"SJIS-Mobile#DOCOMO",
"Shift_JIS",
mbfl_encoding_sjis_docomo_aliases,
(const char *(*)[])&mbfl_encoding_sjis_docomo_aliases,
mblen_table_sjis,
MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE
};
@ -61,7 +61,7 @@ const mbfl_encoding mbfl_encoding_sjis_kddi = {
mbfl_no_encoding_sjis_kddi,
"SJIS-Mobile#KDDI",
"Shift_JIS",
mbfl_encoding_sjis_kddi_aliases,
(const char *(*)[])&mbfl_encoding_sjis_kddi_aliases,
mblen_table_sjis,
MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE
};
@ -70,7 +70,7 @@ const mbfl_encoding mbfl_encoding_sjis_sb = {
mbfl_no_encoding_sjis_sb,
"SJIS-Mobile#SOFTBANK",
"Shift_JIS",
mbfl_encoding_sjis_sb_aliases,
(const char *(*)[])&mbfl_encoding_sjis_sb_aliases,
mblen_table_sjis,
MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE
};
@ -155,35 +155,36 @@ static const int nflags_code_kddi[10] = {0x2549, 0x2546, 0x24c0, 0x2545, 0x2548,
static const int nflags_code_sb[10] = {0x2b0a, 0x2b05, 0x2b08, 0x2b04, 0x2b07, 0x2b06, 0x2b02, 0x2b0b, 0x2b09, 0x2b03};
const unsigned short mbfl_docomo2uni_pua[4][3] = {
{0x28c2, 0x2929, 0xe63e},
{0x2930, 0x2932, 0xe6ac},
{0x2935, 0x293e, 0xe6b1},
{0x28c2, 0x292f, 0xe63e},
{0x2930, 0x2934, 0xe6ac},
{0x2935, 0x2951, 0xe6b1},
{0x2952, 0x29db, 0xe6ce},
};
const unsigned short mbfl_kddi2uni_pua[6][3] = {
const unsigned short mbfl_kddi2uni_pua[7][3] = {
{0x26ec, 0x2838, 0xe468},
{0x284c, 0x2863, 0xe5b5},
{0x24b8, 0x24ca, 0xe5cd},
{0x24cb, 0x2545, 0xea80},
{0x2839, 0x284b, 0xeafb},
{0x2546, 0x25c0, 0xeb0e},
{0x25c1, 0x25c6, 0xeb89},
};
const unsigned short mbfl_sb2uni_pua[6][3] = {
{0x27a9, 0x2802, 0xe101},
{0x2808, 0x285a, 0xe201},
{0x2808, 0x2861, 0xe201},
{0x2921, 0x297a, 0xe001},
{0x2980, 0x29cc, 0xe301},
{0x2a99, 0x2ae4, 0xe401},
{0x2af8, 0x2b2f, 0xe501},
{0x2af8, 0x2b35, 0xe501},
};
const unsigned short mbfl_kddi2uni_pua_b[8][3] = {
{0x24b8, 0x24f6, 0xec40},
{0x24f7, 0x2573, 0xec80},
{0x2574, 0x25b2, 0xed40},
{0x25b3, 0x25c0, 0xed80},
{0x25b3, 0x25c6, 0xed80},
{0x26ec, 0x272a, 0xef40},
{0x272b, 0x27a7, 0xef80},
{0x27a8, 0x27e6, 0xf040},

2
ext/mbstring/libmbfl/filters/mbfilter_sjis_mobile.h

@ -48,7 +48,7 @@ extern const struct mbfl_convert_vtbl vtbl_sjis_sb_wchar;
extern const struct mbfl_convert_vtbl vtbl_wchar_sjis_sb;
extern const unsigned short mbfl_docomo2uni_pua[4][3];
extern const unsigned short mbfl_kddi2uni_pua[6][3];
extern const unsigned short mbfl_kddi2uni_pua[7][3];
extern const unsigned short mbfl_sb2uni_pua[6][3];
extern const unsigned short mbfl_kddi2uni_pua_b[8][3];

4
ext/mbstring/libmbfl/filters/mbfilter_utf8_mobile.c

@ -213,7 +213,7 @@ int mbfl_filt_conv_utf8_mobile_wchar(int c, mbfl_convert_filter *filter)
mbfilter_conv_r_map_tbl(s, &s1, mbfl_docomo2uni_pua, 4) > 0) {
s = mbfilter_sjis_emoji_docomo2unicode(s1, &snd);
} else if (filter->from->no_encoding == mbfl_no_encoding_utf8_kddi_a &&
mbfilter_conv_r_map_tbl(s, &s1, mbfl_kddi2uni_pua, 6) > 0) {
mbfilter_conv_r_map_tbl(s, &s1, mbfl_kddi2uni_pua, 7) > 0) {
s = mbfilter_sjis_emoji_kddi2unicode(s1, &snd);
} else if (filter->from->no_encoding == mbfl_no_encoding_utf8_kddi_b &&
mbfilter_conv_r_map_tbl(s, &s1, mbfl_kddi2uni_pua_b, 8) > 0) {
@ -322,7 +322,7 @@ int mbfl_filt_conv_wchar_utf8_mobile(int c, mbfl_convert_filter *filter)
mbfilter_conv_map_tbl(s1, &c1, mbfl_docomo2uni_pua, 4) > 0) ||
(filter->to->no_encoding == mbfl_no_encoding_utf8_kddi_a &&
mbfilter_unicode2sjis_emoji_kddi(c, &s1, filter) > 0 &&
mbfilter_conv_map_tbl(s1, &c1, mbfl_kddi2uni_pua, 6) > 0) ||
mbfilter_conv_map_tbl(s1, &c1, mbfl_kddi2uni_pua, 7) > 0) ||
(filter->to->no_encoding == mbfl_no_encoding_utf8_kddi_b &&
mbfilter_unicode2sjis_emoji_kddi(c, &s1, filter) > 0 &&
mbfilter_conv_map_tbl(s1, &c1, mbfl_kddi2uni_pua_b, 8) > 0) ||

Loading…
Cancel
Save