1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-23 18:47:57 +00:00

(count_combining_after): Check also preceding bytes at

POS if all characters in STRING are not character head.
This commit is contained in:
Kenichi Handa 1998-09-07 13:39:15 +00:00
parent 8783b77f5b
commit b57a7b0bf4

View File

@ -950,11 +950,23 @@ count_combining_after (string, length, pos, pos_byte)
if (length == 0 || ASCII_BYTE_P (string[length - 1]))
return 0;
i = length - 1;
while (i > 0 && ! CHAR_HEAD_P (string[i]))
while (i >= 0 && ! CHAR_HEAD_P (string[i]))
{
i--;
}
if (! BASE_LEADING_CODE_P (string[i]))
if (i < 0)
{
/* All characters in `string' are not character head.
We must check also preceding bytes at POS.
We are sure that the gap is at POS. */
string = BEG_ADDR;
i = pos_byte - 2;
while (i >= 0 && ! CHAR_HEAD_P (string[i]))
i--;
if (i < 0 || !BASE_LEADING_CODE_P (string[i]))
return 0;
}
else if (!BASE_LEADING_CODE_P (string[i]))
return 0;
if (pos == ZV)