730 |
if (bytes == 1) \ |
if (bytes == 1) \ |
731 |
{ \ |
{ \ |
732 |
*dst++ = (ch); \ |
*dst++ = (ch); \ |
733 |
if ((ch) >= 0x80 && (ch) < 0xA0) \ |
if (extra_bytes && (ch) >= 0x80 && (ch) < 0xA0) \ |
734 |
/* We may have to convert this eight-bit char to \ |
/* We may have to convert this eight-bit char to \ |
735 |
multibyte form later. */ \ |
multibyte form later. */ \ |
736 |
extra_bytes++; \ |
extra_bytes++; \ |
887 |
each of them will be converted to multibyte form of 2-byte |
each of them will be converted to multibyte form of 2-byte |
888 |
sequence. For that conversion, we remember how many more bytes |
sequence. For that conversion, we remember how many more bytes |
889 |
we must keep in DESTINATION in this variable. */ |
we must keep in DESTINATION in this variable. */ |
890 |
int extra_bytes = 0; |
int extra_bytes = ccl->eight_bit_control; |
891 |
|
|
892 |
if (ic >= ccl->eof_ic) |
if (ic >= ccl->eof_ic) |
893 |
ic = CCL_HEADER_MAIN; |
ic = CCL_HEADER_MAIN; |
1905 |
ccl->ic = ic; |
ccl->ic = ic; |
1906 |
ccl->stack_idx = stack_idx; |
ccl->stack_idx = stack_idx; |
1907 |
ccl->prog = ccl_prog; |
ccl->prog = ccl_prog; |
1908 |
ccl->eight_bit_control = (extra_bytes > 0); |
ccl->eight_bit_control = (extra_bytes > 1); |
1909 |
if (consumed) |
if (consumed) |
1910 |
*consumed = src - source; |
*consumed = src - source; |
1911 |
return (dst ? dst - destination : 0); |
return (dst ? dst - destination : 0); |
2060 |
ccl->stack_idx = 0; |
ccl->stack_idx = 0; |
2061 |
ccl->eol_type = CODING_EOL_LF; |
ccl->eol_type = CODING_EOL_LF; |
2062 |
ccl->suppress_error = 0; |
ccl->suppress_error = 0; |
2063 |
|
ccl->eight_bit_control = 0; |
2064 |
return 0; |
return 0; |
2065 |
} |
} |
2066 |
|
|