@@ -1923,9 +1923,9 @@ static int mbfl_filt_conv_wchar_jis2004(int c, mbfl_convert_filter *filter)
1923
1923
1924
1924
/* check for major japanese chars: U+4E00 - U+9FFF */
1925
1925
if (s1 <= 0 ) {
1926
- for (k = 0 ; k < uni2jis_tbl_len ; k ++ ) {
1927
- if (c >= uni2jis_tbl_range [k ][0 ] && c <= uni2jis_tbl_range [k ][1 ]) {
1928
- s1 = uni2jis_tbl [k ][c - uni2jis_tbl_range [k ][0 ]];
1926
+ for (size_t offset = 0 ; offset < uni2jis_tbl_len ; offset ++ ) {
1927
+ if (c >= uni2jis_tbl_range [offset ][0 ] && c <= uni2jis_tbl_range [offset ][1 ]) {
1928
+ s1 = uni2jis_tbl [offset ][c - uni2jis_tbl_range [offset ][0 ]];
1929
1929
break ;
1930
1930
}
1931
1931
}
@@ -10687,7 +10687,6 @@ const mbfl_encoding mbfl_encoding_uhc = {
10687
10687
10688
10688
static int mbfl_filt_conv_gb18030_wchar (int c , mbfl_convert_filter * filter )
10689
10689
{
10690
- int k ;
10691
10690
int c1 , c2 , c3 , w = -1 ;
10692
10691
10693
10692
switch (filter -> status ) {
@@ -10728,13 +10727,14 @@ static int mbfl_filt_conv_gb18030_wchar(int c, mbfl_convert_filter *filter)
10728
10727
10729
10728
c2 = (c1 << 8 ) | c ;
10730
10729
10731
- if (w <= 0 &&
10732
- ((c2 >= 0xa2ab && c2 <= 0xa9f0 + (0xe80f - 0xe801 )) ||
10733
- (c2 >= 0xd7fa && c2 <= 0xd7fa + (0xe814 - 0xe810 )) ||
10734
- (c2 >= 0xfe50 && c2 <= 0xfe80 + (0xe864 - 0xe844 )))) {
10735
- for (k = 0 ; k < mbfl_gb18030_pua_tbl_max ; k ++ ) {
10736
- if (c2 >= mbfl_gb18030_pua_tbl [k ][2 ] && c2 <= mbfl_gb18030_pua_tbl [k ][2 ] + mbfl_gb18030_pua_tbl [k ][1 ] - mbfl_gb18030_pua_tbl [k ][0 ]) {
10737
- w = c2 - mbfl_gb18030_pua_tbl [k ][2 ] + mbfl_gb18030_pua_tbl [k ][0 ];
10730
+ if (w <= 0 && (
10731
+ (c2 >= 0xa2ab && c2 <= 0xa9f0 + (0xe80f - 0xe801 )) ||
10732
+ (c2 >= 0xd7fa && c2 <= 0xd7fa + (0xe814 - 0xe810 )) ||
10733
+ (c2 >= 0xfe50 && c2 <= 0xfe80 + (0xe864 - 0xe844 ))
10734
+ )) {
10735
+ for (size_t offset = 0 ; offset < mbfl_gb18030_pua_tbl_max ; offset ++ ) {
10736
+ if (c2 >= mbfl_gb18030_pua_tbl [offset ][2 ] && c2 <= mbfl_gb18030_pua_tbl [offset ][2 ] + mbfl_gb18030_pua_tbl [offset ][1 ] - mbfl_gb18030_pua_tbl [offset ][0 ]) {
10737
+ w = c2 - mbfl_gb18030_pua_tbl [offset ][2 ] + mbfl_gb18030_pua_tbl [offset ][0 ];
10738
10738
CK ((* filter -> output_function )(w , filter -> data ));
10739
10739
break ;
10740
10740
}
@@ -10783,7 +10783,7 @@ static int mbfl_filt_conv_gb18030_wchar(int c, mbfl_convert_filter *filter)
10783
10783
} else { /* Unicode BMP */
10784
10784
w = (((c1 - 0x81 )* 10 + (c2 - 0x30 ))* 126 + (c3 - 0x81 ))* 10 + (c - 0x30 );
10785
10785
if (w >= 0 && w <= 39419 ) {
10786
- k = mbfl_bisec_srch (w , mbfl_gb2uni_tbl , mbfl_gb_uni_max );
10786
+ int k = mbfl_bisec_srch (w , mbfl_gb2uni_tbl , mbfl_gb_uni_max );
10787
10787
w += mbfl_gb_uni_ofst [k ];
10788
10788
} else {
10789
10789
CK ((* filter -> output_function )(MBFL_BAD_INPUT , filter -> data ));
@@ -11219,7 +11219,6 @@ static void mb_wchar_to_gb18030(uint32_t *in, size_t len, mb_convert_buf *buf, b
11219
11219
11220
11220
static int mbfl_filt_conv_cp936_wchar (int c , mbfl_convert_filter * filter )
11221
11221
{
11222
- int k ;
11223
11222
int c1 , c2 , w = -1 ;
11224
11223
11225
11224
switch (filter -> status ) {
@@ -11253,10 +11252,12 @@ static int mbfl_filt_conv_cp936_wchar(int c, mbfl_convert_filter *filter)
11253
11252
11254
11253
c2 = (c1 << 8 ) | c ;
11255
11254
11256
- if (w <= 0 &&
11257
- ((c2 >= 0xa2ab && c2 <= 0xa9f0 + (0xe80f - 0xe801 )) ||
11258
- (c2 >= 0xd7fa && c2 <= 0xd7fa + (0xe814 - 0xe810 )) ||
11259
- (c2 >= 0xfe50 && c2 <= 0xfe80 + (0xe864 - 0xe844 )))) {
11255
+ if (w <= 0 && (
11256
+ (c2 >= 0xa2ab && c2 <= 0xa9f0 + (0xe80f - 0xe801 )) ||
11257
+ (c2 >= 0xd7fa && c2 <= 0xd7fa + (0xe814 - 0xe810 )) ||
11258
+ (c2 >= 0xfe50 && c2 <= 0xfe80 + (0xe864 - 0xe844 ))
11259
+ )) {
11260
+ size_t k ;
11260
11261
for (k = 0 ; k < mbfl_cp936_pua_tbl_max ; k ++ ) {
11261
11262
if (c2 >= mbfl_cp936_pua_tbl [k ][2 ] &&
11262
11263
c2 <= mbfl_cp936_pua_tbl [k ][2 ] +
@@ -12026,7 +12027,7 @@ static inline int is_in_cp950_pua(int c1, int c)
12026
12027
12027
12028
static int mbfl_filt_conv_big5_wchar (int c , mbfl_convert_filter * filter )
12028
12029
{
12029
- int k , c1 , w ;
12030
+ int c1 , w ;
12030
12031
12031
12032
switch (filter -> status ) {
12032
12033
case 0 :
@@ -12063,6 +12064,7 @@ static int mbfl_filt_conv_big5_wchar(int c, mbfl_convert_filter *filter)
12063
12064
if (is_in_cp950_pua (c1 , c )) {
12064
12065
int c2 = (c1 << 8 ) | c ;
12065
12066
12067
+ size_t k ;
12066
12068
for (k = 0 ; k < sizeof (cp950_pua_tbl ) / (sizeof (unsigned short )* 4 ); k ++ ) {
12067
12069
if (c2 >= cp950_pua_tbl [k ][2 ] && c2 <= cp950_pua_tbl [k ][3 ]) {
12068
12070
break ;
@@ -12147,7 +12149,7 @@ static int mbfl_filt_conv_big5_wchar_flush(mbfl_convert_filter *filter)
12147
12149
12148
12150
static int mbfl_filt_conv_wchar_big5 (int c , mbfl_convert_filter * filter )
12149
12151
{
12150
- int k , s = 0 ;
12152
+ int s = 0 ;
12151
12153
12152
12154
if (c >= ucs_a1_big5_table_min && c < ucs_a1_big5_table_max ) {
12153
12155
s = ucs_a1_big5_table [c - ucs_a1_big5_table_min ];
@@ -12165,6 +12167,7 @@ static int mbfl_filt_conv_wchar_big5(int c, mbfl_convert_filter *filter)
12165
12167
12166
12168
if (filter -> to -> no_encoding == mbfl_no_encoding_cp950 ) {
12167
12169
if (c >= 0xe000 && c <= 0xf848 ) { /* PUA for CP950 */
12170
+ size_t k ;
12168
12171
for (k = 0 ; k < sizeof (cp950_pua_tbl ) / (sizeof (unsigned short )* 4 ); k ++ ) {
12169
12172
if (c <= cp950_pua_tbl [k ][1 ]) {
12170
12173
break ;
@@ -12373,7 +12376,7 @@ static size_t mb_cp950_to_wchar(unsigned char **in, size_t *in_len, uint32_t *bu
12373
12376
if (is_in_cp950_pua (c , c2 )) {
12374
12377
unsigned int s = (c << 8 ) | c2 ;
12375
12378
12376
- int k ;
12379
+ size_t k ;
12377
12380
for (k = 0 ; k < sizeof (cp950_pua_tbl ) / (sizeof (unsigned short )* 4 ); k ++ ) {
12378
12381
if (s >= cp950_pua_tbl [k ][2 ] && s <= cp950_pua_tbl [k ][3 ]) {
12379
12382
break ;
@@ -12466,7 +12469,7 @@ static void mb_wchar_to_cp950(uint32_t *in, size_t len, mb_convert_buf *buf, boo
12466
12469
}
12467
12470
12468
12471
if (w >= 0xE000 && w <= 0xF848 ) {
12469
- int k ;
12472
+ size_t k ;
12470
12473
for (k = 0 ; k < sizeof (cp950_pua_tbl ) / (sizeof (unsigned short )* 4 ); k ++ ) {
12471
12474
if (w <= cp950_pua_tbl [k ][1 ]) {
12472
12475
break ;
0 commit comments