]> granicus.if.org Git - php/commitdiff
Remove useless constant MBFL_ENCTYPE_MBCS
authorAlex Dowad <alexinbeijing@gmail.com>
Sun, 18 Oct 2020 17:31:58 +0000 (19:31 +0200)
committerAlex Dowad <alexinbeijing@gmail.com>
Fri, 15 Jan 2021 19:55:41 +0000 (21:55 +0200)
This flag indicated that an encoding was 'multi-byte'; it can use a variable
number of bytes to encode each character. As it turns out, we don't actually
need to check this flag anywhere, so it's better to remove it.

30 files changed:
ext/mbstring/libmbfl/filters/mbfilter_big5.c
ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c
ext/mbstring/libmbfl/filters/mbfilter_cp51932.c
ext/mbstring/libmbfl/filters/mbfilter_cp932.c
ext/mbstring/libmbfl/filters/mbfilter_cp936.c
ext/mbstring/libmbfl/filters/mbfilter_euc_cn.c
ext/mbstring/libmbfl/filters/mbfilter_euc_jp.c
ext/mbstring/libmbfl/filters/mbfilter_euc_jp_2004.c
ext/mbstring/libmbfl/filters/mbfilter_euc_jp_win.c
ext/mbstring/libmbfl/filters/mbfilter_euc_kr.c
ext/mbstring/libmbfl/filters/mbfilter_euc_tw.c
ext/mbstring/libmbfl/filters/mbfilter_gb18030.c
ext/mbstring/libmbfl/filters/mbfilter_hz.c
ext/mbstring/libmbfl/filters/mbfilter_iso2022_jp_ms.c
ext/mbstring/libmbfl/filters/mbfilter_iso2022_kr.c
ext/mbstring/libmbfl/filters/mbfilter_iso2022jp_2004.c
ext/mbstring/libmbfl/filters/mbfilter_iso2022jp_mobile.c
ext/mbstring/libmbfl/filters/mbfilter_jis.c
ext/mbstring/libmbfl/filters/mbfilter_sjis.c
ext/mbstring/libmbfl/filters/mbfilter_sjis_2004.c
ext/mbstring/libmbfl/filters/mbfilter_sjis_mac.c
ext/mbstring/libmbfl/filters/mbfilter_sjis_mobile.c
ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c
ext/mbstring/libmbfl/filters/mbfilter_uhc.c
ext/mbstring/libmbfl/filters/mbfilter_utf7.c
ext/mbstring/libmbfl/filters/mbfilter_utf7imap.c
ext/mbstring/libmbfl/filters/mbfilter_utf8.c
ext/mbstring/libmbfl/filters/mbfilter_utf8_mobile.c
ext/mbstring/libmbfl/mbfl/mbfl_consts.h
ext/mbstring/mbstring.c

index 110150134c353275131dde15d42e8c683a6e4264..0a0d6646edbcad75eaf2b784e1d96d239d2fa4d8 100644 (file)
@@ -59,7 +59,7 @@ const mbfl_encoding mbfl_encoding_big5 = {
        "BIG5",
        mbfl_encoding_big5_aliases,
        mblen_table_big5,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_big5_wchar,
        &vtbl_wchar_big5
 };
@@ -70,7 +70,7 @@ const mbfl_encoding mbfl_encoding_cp950 = {
        "BIG5",
        NULL,
        mblen_table_big5,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_cp950_wchar,
        &vtbl_wchar_cp950
 };
index da4b08c892fe197d356f90133db49e22e4c1d714..01cec63236f2da0b3fde6e15e8477acf1271de09 100644 (file)
@@ -58,7 +58,7 @@ const mbfl_encoding mbfl_encoding_cp50220 = {
        "ISO-2022-JP",
        cp50220_aliases,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_cp50220_wchar,
        &vtbl_wchar_cp50220
 };
@@ -69,7 +69,7 @@ const mbfl_encoding mbfl_encoding_cp50221 = {
        "ISO-2022-JP",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_cp50221_wchar,
        &vtbl_wchar_cp50221
 };
@@ -80,7 +80,7 @@ const mbfl_encoding mbfl_encoding_cp50222 = {
        "ISO-2022-JP",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_cp50222_wchar,
        &vtbl_wchar_cp50222
 };
index b4e78eef1cddcaead30a8ea14942ad5df9b2dbb2..5d1d08998cf100ad2f332f9c4deae4b0b80b24f2 100644 (file)
@@ -63,7 +63,7 @@ const mbfl_encoding mbfl_encoding_cp51932 = {
        "CP51932",
        mbfl_encoding_cp51932_aliases,
        mblen_table_eucjp,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_cp51932_wchar,
        &vtbl_wchar_cp51932
 };
index 64c02471193d484eba2c01fd81815ed129df49f8..e6f34dd31b35033c20ae421675070ea502448035 100644 (file)
@@ -62,7 +62,7 @@ const mbfl_encoding mbfl_encoding_cp932 = {
        "Shift_JIS",
        mbfl_encoding_cp932_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_cp932_wchar,
        &vtbl_wchar_cp932
 };
index 4cfd1af8779aebf39f247ad013ccd4e821614fec..0559e0ce78cdb84e9be8e2aca29a2610d420bb90 100644 (file)
@@ -59,7 +59,7 @@ const mbfl_encoding mbfl_encoding_cp936 = {
        "CP936",
        mbfl_encoding_cp936_aliases,
        mblen_table_cp936,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_cp936_wchar,
        &vtbl_wchar_cp936
 };
index 6ee0bf9bd0c4c0c93c3cd4d422d65a8132968302..c95e4f5448ed4d7cc1ad8fc65b86b5b4aa6e54f8 100644 (file)
@@ -59,7 +59,7 @@ const mbfl_encoding mbfl_encoding_euc_cn = {
        "CN-GB",
        mbfl_encoding_euc_cn_aliases,
        mblen_table_euccn,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_euccn_wchar,
        &vtbl_wchar_euccn
 };
index 25ce6c92bc2977590beecbe8949fd73986e046d6..e3e7dfc931a4ab339710ff7dd001737e2cc435a1 100644 (file)
@@ -62,7 +62,7 @@ const mbfl_encoding mbfl_encoding_euc_jp = {
        "EUC-JP",
        mbfl_encoding_euc_jp_aliases,
        mblen_table_eucjp,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_eucjp_wchar,
        &vtbl_wchar_eucjp
 };
index a14d37ec93bf97be73a22be3f776bc311f349fe8..abfc4cc4aecc85133b6df5fffd8d08d31331d9dc 100644 (file)
@@ -41,7 +41,7 @@ const mbfl_encoding mbfl_encoding_eucjp2004 = {
        "EUC-JP",
        mbfl_encoding_eucjp2004_aliases,
        mblen_table_eucjp,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_eucjp2004_wchar,
        &vtbl_wchar_eucjp2004
 };
index 569dabd92da5ff47dc5225874252058896e32530..d55e5c54e6212f0560616c78199386cf38a01917 100644 (file)
@@ -61,7 +61,7 @@ const mbfl_encoding mbfl_encoding_eucjp_win = {
        "EUC-JP",
        mbfl_encoding_eucjp_win_aliases,
        mblen_table_eucjp,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_eucjpwin_wchar,
        &vtbl_wchar_eucjpwin
 };
index 3f423f59694f28bfd0cdf5c7d6cb4c9df78654db..87bf49cb226fa359a18827b230edd735d1da5043 100644 (file)
@@ -58,7 +58,7 @@ const mbfl_encoding mbfl_encoding_euc_kr = {
        "EUC-KR",
        mbfl_encoding_euc_kr_aliases,
        mblen_table_euckr,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_euckr_wchar,
        &vtbl_wchar_euckr
 };
index 68dd539b721c83c4627a329dbce9e679e75c9f3b..3803e2524a3c231efdc131f8b15311f3d01d550b 100644 (file)
@@ -60,7 +60,7 @@ const mbfl_encoding mbfl_encoding_euc_tw = {
        "EUC-TW",
        mbfl_encoding_euc_tw_aliases,
        mblen_table_euctw,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_euctw_wchar,
        &vtbl_wchar_euctw
 };
index dfab3d59dfa9b6c3d3a13fc91c701c6fca9501a4..63be51e7af280dbd393372f2db0639bc39603155 100644 (file)
@@ -41,7 +41,7 @@ const mbfl_encoding mbfl_encoding_gb18030 = {
        "GB18030",
        mbfl_encoding_gb18030_aliases,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_gb18030_wchar,
        &vtbl_wchar_gb18030
 };
index bf3f8c4b774e2c14eb75beb662a3a22fcc55073f..61766ab41252609c39b28179e84ca695df0da4c5 100644 (file)
@@ -38,7 +38,7 @@ const mbfl_encoding mbfl_encoding_hz = {
        "HZ-GB-2312",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_hz_wchar,
        &vtbl_wchar_hz
 };
index 5e0a63958b68cea3ad0f41e7e4bfae3fdc45c944..1127f8e6299dc5cc347ae452a575365686f7e35e 100644 (file)
@@ -42,7 +42,7 @@ const mbfl_encoding mbfl_encoding_2022jpms = {
        "ISO-2022-JP",
        mbfl_encoding_2022jpms_aliases,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_2022jpms_wchar,
        &vtbl_wchar_2022jpms
 };
index feb29a0a2ab11ad3bc43d9096d566b3529231505..a74b599ba662aa8e49942e55922440e11f83093e 100644 (file)
@@ -37,7 +37,7 @@ const mbfl_encoding mbfl_encoding_2022kr = {
        "ISO-2022-KR",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_2022kr_wchar,
        &vtbl_wchar_2022kr
 };
index ae5718311d5da896a00cdd1c9aa2f23535c8caab..c54941f23dcbbf8960fca5c9eaba1acddbe07d62 100644 (file)
@@ -41,7 +41,7 @@ const mbfl_encoding mbfl_encoding_2022jp_2004 = {
        "ISO-2022-JP-2004",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_2022jp_2004_wchar,
        &vtbl_wchar_2022jp_2004
 };
index 2088418b3a1e29cf61e5ba27be0b028057f4ed8d..4036d5949a6f059a4a5024992820731153e800b2 100644 (file)
@@ -45,7 +45,7 @@ const mbfl_encoding mbfl_encoding_2022jp_kddi = {
        "ISO-2022-JP",
        mbfl_encoding_2022jp_kddi_aliases,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_2022jp_kddi_wchar,
        &vtbl_wchar_2022jp_kddi
 };
index fe2b852a776f1953ef157ed6b0a6665839f1a014..b62956e61780338ca46f403a2e8526bb86a9d3d8 100644 (file)
@@ -41,7 +41,7 @@ const mbfl_encoding mbfl_encoding_jis = {
        "ISO-2022-JP",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_jis_wchar,
        &vtbl_wchar_jis
 };
@@ -52,7 +52,7 @@ const mbfl_encoding mbfl_encoding_2022jp = {
        "ISO-2022-JP",
        NULL,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_2022jp_wchar,
        &vtbl_wchar_2022jp
 };
index bde382a6d3df4e9778c30079771db2c481e8704d..e175f8dbfbbb21e14f5158dfd13020484663299f 100644 (file)
@@ -65,7 +65,7 @@ const mbfl_encoding mbfl_encoding_sjis = {
        "Shift_JIS",
        mbfl_encoding_sjis_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis_wchar,
        &vtbl_wchar_sjis
 };
index f52eebce1daabb1e62de60e2631db4cc0ff848dc..8d4d3e9d84e51182234778b7d4e30ab111c71ca2 100644 (file)
@@ -46,7 +46,7 @@ const mbfl_encoding mbfl_encoding_sjis2004 = {
        "Shift_JIS",
        mbfl_encoding_sjis2004_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis2004_wchar,
        &vtbl_wchar_sjis2004
 };
index 4dead25a78def79a59f2a96cee36221e2d349914..12e5cdca8f3a817656ad4ba6e6108c5e6e424be3 100644 (file)
@@ -48,7 +48,7 @@ const mbfl_encoding mbfl_encoding_sjis_mac = {
        "Shift_JIS",
        mbfl_encoding_sjis_mac_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis_mac_wchar,
        &vtbl_wchar_sjis_mac
 };
index 53f5242dda3f9069c8144a1bfc2d841b889ab24a..34acccbc2d3d64a6e996eea6868dcd646704f11a 100644 (file)
@@ -50,7 +50,7 @@ const mbfl_encoding mbfl_encoding_sjis_docomo = {
        "Shift_JIS",
        mbfl_encoding_sjis_docomo_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis_docomo_wchar,
        &vtbl_wchar_sjis_docomo
 };
@@ -61,7 +61,7 @@ const mbfl_encoding mbfl_encoding_sjis_kddi = {
        "Shift_JIS",
        mbfl_encoding_sjis_kddi_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis_kddi_wchar,
        &vtbl_wchar_sjis_kddi
 };
@@ -72,7 +72,7 @@ const mbfl_encoding mbfl_encoding_sjis_sb = {
        "Shift_JIS",
        mbfl_encoding_sjis_sb_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis_sb_wchar,
        &vtbl_wchar_sjis_sb
 };
index d1dd5efd954b23ab07eb0058a34a5350dc6d9e28..df7ba62e77be213c61d628d614e51a6fa7cbf2a4 100644 (file)
@@ -60,7 +60,7 @@ const mbfl_encoding mbfl_encoding_sjis_open = {
        "Shift_JIS",
        mbfl_encoding_sjis_open_aliases,
        mblen_table_sjis,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_sjis_open_wchar,
        &vtbl_wchar_sjis_open
 };
index a164fccbcdb2c54eeb175dc6422dc6df0ccc4bbb..447ec7c5e18e8901cf76fafb2978044362c5f7e8 100644 (file)
@@ -59,7 +59,7 @@ const mbfl_encoding mbfl_encoding_uhc = {
        "UHC",
        mbfl_encoding_uhc_aliases,
        mblen_table_uhc,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_uhc_wchar,
        &vtbl_wchar_uhc
 };
index bda303ef6f84f5e878db11dc70a280455cc4e74d..ee12d13142c83ea4c59766067348b9e74b6c5778 100644 (file)
@@ -51,7 +51,7 @@ const mbfl_encoding mbfl_encoding_utf7 = {
        "UTF-7",
        mbfl_encoding_utf7_aliases,
        NULL,
-       MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+       MBFL_ENCTYPE_GL_UNSAFE,
        &vtbl_utf7_wchar,
        &vtbl_wchar_utf7
 };
index 4c1cd8712fad9fdff4f649a58618ec5fdec38c96..3ec7cbeabbe8567d09f8d934367816fc90818d5f 100644 (file)
@@ -86,7 +86,7 @@ const mbfl_encoding mbfl_encoding_utf7imap = {
        NULL,
        mbfl_encoding_utf7imap_aliases,
        NULL,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_utf7imap_wchar,
        &vtbl_wchar_utf7imap
 };
index 0c73952558cb73c5df237c5fdbc6100c3c16e94e..9da9f05315fee70ab51b37ed6483a6bbbf6cd11e 100644 (file)
@@ -57,7 +57,7 @@ const mbfl_encoding mbfl_encoding_utf8 = {
        "UTF-8",
        mbfl_encoding_utf8_aliases,
        mblen_table_utf8,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_utf8_wchar,
        &vtbl_wchar_utf8
 };
index b30a1c684fcd0cc8b301110c7c0dd7f7746ac3d1..390a7eddc81f697f3a4f0849624f0240540ed793 100644 (file)
@@ -47,7 +47,7 @@ const mbfl_encoding mbfl_encoding_utf8_docomo = {
        "UTF-8",
        mbfl_encoding_utf8_docomo_aliases,
        mblen_table_utf8,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_utf8_docomo_wchar,
        &vtbl_wchar_utf8_docomo
 };
@@ -58,7 +58,7 @@ const mbfl_encoding mbfl_encoding_utf8_kddi_a = {
        "UTF-8",
        mbfl_encoding_utf8_kddi_a_aliases,
        mblen_table_utf8,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_utf8_kddi_a_wchar,
        &vtbl_wchar_utf8_kddi_a
 };
@@ -69,7 +69,7 @@ const mbfl_encoding mbfl_encoding_utf8_kddi_b = {
        "UTF-8",
        mbfl_encoding_utf8_kddi_b_aliases,
        mblen_table_utf8,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_utf8_kddi_b_wchar,
        &vtbl_wchar_utf8_kddi_b
 };
@@ -80,7 +80,7 @@ const mbfl_encoding mbfl_encoding_utf8_sb = {
        "UTF-8",
        mbfl_encoding_utf8_sb_aliases,
        mblen_table_utf8,
-       MBFL_ENCTYPE_MBCS,
+       0,
        &vtbl_utf8_sb_wchar,
        &vtbl_wchar_utf8_sb
 };
index 137cd0fcb8993c9402f16defbcb841933a88de81..bc645ab7613340ba03e11b53426d709630e49f88 100644 (file)
@@ -32,7 +32,6 @@
 #define MBFL_CONSTS_H
 
 #define MBFL_ENCTYPE_SBCS              0x00000001 /* single-byte encoding */
-#define MBFL_ENCTYPE_MBCS              0x00000002 /* multi-byte encoding */
 #define MBFL_ENCTYPE_WCS2              0x00000010 /* 2 bytes/char */
 #define MBFL_ENCTYPE_MWC2              0x00000040 /* 2+ bytes/char */
 #define MBFL_ENCTYPE_WCS4              0x00000100 /* 4 bytes/char */
index f7223e973c55b285a7d2ad46a1c3cd910d03bfe8..416dc9a6af5c9f4f84b6f1e99a5936367dd2314a 100644 (file)
@@ -403,13 +403,7 @@ static const char *php_mb_zend_encoding_name_getter(const zend_encoding *encodin
 static bool php_mb_zend_encoding_lexer_compatibility_checker(const zend_encoding *_encoding)
 {
        const mbfl_encoding *encoding = (const mbfl_encoding*)_encoding;
-       if (encoding->flag & MBFL_ENCTYPE_SBCS) {
-               return 1;
-       }
-       if ((encoding->flag & (MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE)) == MBFL_ENCTYPE_MBCS) {
-               return 1;
-       }
-       return 0;
+       return !(encoding->flag & MBFL_ENCTYPE_GL_UNSAFE);
 }
 
 static const zend_encoding *php_mb_zend_encoding_detector(const unsigned char *arg_string, size_t arg_length, const zend_encoding **list, size_t list_size)
@@ -4210,10 +4204,10 @@ static int php_mb_encoding_translation(void)
 /* {{{ MBSTRING_API size_t php_mb_mbchar_bytes_ex() */
 MBSTRING_API size_t php_mb_mbchar_bytes_ex(const char *s, const mbfl_encoding *enc)
 {
-       if (enc != NULL) {
-               if (enc->flag & MBFL_ENCTYPE_MBCS) {
-                       if (enc->mblen_table != NULL) {
-                               if (s != NULL) return enc->mblen_table[*(unsigned char *)s];
+       if (enc) {
+               if (enc->mblen_table) {
+                       if (s) {
+                               return enc->mblen_table[*(unsigned char *)s];
                        }
                } else if (enc->flag & MBFL_ENCTYPE_WCS2) {
                        return 2;