summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenichi Handa <handa@m17n.org>1998-08-18 13:15:18 +0000
committerKenichi Handa <handa@m17n.org>1998-08-18 13:15:18 +0000
commit7b179c2dc2fb8f2e8a4cfad9a8c2bf0af1b37062 (patch)
treed6747df70ffafb9058f74f0894adbd4edfa25917
parent1814bd62c5029fb0589f1b755c1605316f0b671f (diff)
downloademacs-7b179c2dc2fb8f2e8a4cfad9a8c2bf0af1b37062.tar.gz
(ccl_coding_driver): Setup ccl->last_block properly.
(setup_coding_system): Correctly setup `valid_codes' member.
-rw-r--r--src/coding.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/coding.c b/src/coding.c
index e9227a2ac7b..f44a0a09d40 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -3086,8 +3086,9 @@ setup_coding_system (coding_system, coding)
{
Lisp_Object this;
- for (this = XCONS (val)->car; CONSP (val); val = XCONS (val)->cdr)
+ for (; CONSP (val); val = XCONS (val)->cdr)
{
+ this = XCONS (val)->car;
if (INTEGERP (this)
&& XINT (this) >= 0 && XINT (this) < 256)
coding->spec.ccl.valid_codes[XINT (this)] = 1;
@@ -3606,6 +3607,9 @@ ccl_coding_driver (coding, source, destination, src_bytes, dst_bytes, encodep)
= encodep ? &coding->spec.ccl.encoder : &coding->spec.ccl.decoder;
int result;
+ if (encodep)
+ ccl->last_block = coding->mode & CODING_MODE_LAST_BLOCK;
+
coding->produced = ccl_driver (ccl, source, destination,
src_bytes, dst_bytes, &(coding->consumed));
if (encodep)