Commit cc13543e authored by Kenichi Handa's avatar Kenichi Handa

(detect_coding_utf_16): Fix previous change.

parent 9c6d2887
2009-06-16 Kenichi Handa <handa@m17n.org>
* coding.c (detect_coding_utf_16): Fix the logic of rejecting
UTF-16 by checking the dispersion of Eth and Oth bytes.
2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
* coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
......
......@@ -1665,10 +1665,11 @@ detect_coding_utf_16 (coding, detect_info)
e[c1] = 1;
o[c2] = 1;
detect_info->rejected
|= (CATEGORY_MASK_UTF_16_BE | CATEGORY_MASK_UTF_16_LE);
detect_info->rejected |= (CATEGORY_MASK_UTF_16_AUTO
|CATEGORY_MASK_UTF_16_BE
| CATEGORY_MASK_UTF_16_LE);
while (1)
while (detect_info->rejected != CATEGORY_MASK_UTF_16)
{
TWO_MORE_BYTES (c1, c2);
if (c2 < 0)
......@@ -1677,18 +1678,17 @@ detect_coding_utf_16 (coding, detect_info)
{
e[c1] = 1;
e_num++;
if (e_num >= 128 && o_num >= 128)
break;
if (e_num >= 128)
detect_info->rejected |= CATEGORY_MASK_UTF_16_BE_NOSIG;
}
if (! o[c2])
{
o[c2] = 1;
o_num++;
if (e_num >= 128 && o_num >= 128)
break;
if (o_num >= 128)
detect_info->rejected |= CATEGORY_MASK_UTF_16_LE_NOSIG;
}
}
detect_info->rejected |= CATEGORY_MASK_UTF_16;
return 0;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment