comparison src/coding.c @ 34813:e112f39ea5b6

(ccl_coding_driver): Initialize ccl->cr_consumed.
author Kenichi Handa <handa@m17n.org>
date Thu, 21 Dec 2000 23:22:16 +0000
parents f727eb496b4e
children b469d29c0815
comparison
equal deleted inserted replaced
34812:6506a2f76b62 34813:e112f39ea5b6
4020 = encodep ? &coding->spec.ccl.encoder : &coding->spec.ccl.decoder; 4020 = encodep ? &coding->spec.ccl.encoder : &coding->spec.ccl.decoder;
4021 int result; 4021 int result;
4022 4022
4023 ccl->last_block = coding->mode & CODING_MODE_LAST_BLOCK; 4023 ccl->last_block = coding->mode & CODING_MODE_LAST_BLOCK;
4024 if (encodep) 4024 if (encodep)
4025 ccl->eol_type = coding->eol_type; 4025 {
4026 /* On encoding, EOL format is converted within ccl_driver. For
4027 that, setup proper information in the structure CCL. */
4028 ccl->eol_type = coding->eol_type;
4029 if (ccl->eol_type ==CODING_EOL_UNDECIDED)
4030 ccl->eol_type = CODING_EOL_LF;
4031 ccl->cr_consumed = coding->spec.ccl.cr_carryover;
4032 }
4026 ccl->multibyte = coding->src_multibyte; 4033 ccl->multibyte = coding->src_multibyte;
4027 coding->produced = ccl_driver (ccl, source, destination, 4034 coding->produced = ccl_driver (ccl, source, destination,
4028 src_bytes, dst_bytes, &(coding->consumed)); 4035 src_bytes, dst_bytes, &(coding->consumed));
4029 if (encodep) 4036 if (encodep)
4030 coding->produced_char = coding->produced; 4037 {
4038 coding->produced_char = coding->produced;
4039 coding->spec.ccl.cr_carryover = ccl->cr_consumed;
4040 }
4031 else 4041 else
4032 { 4042 {
4033 int bytes 4043 int bytes
4034 = dst_bytes ? dst_bytes : source + coding->consumed - destination; 4044 = dst_bytes ? dst_bytes : source + coding->consumed - destination;
4035 coding->produced = str_as_multibyte (destination, bytes, 4045 coding->produced = str_as_multibyte (destination, bytes,