diff options
author | Kenichi Handa <handa@m17n.org> | 2003-12-29 07:51:22 +0000 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2003-12-29 07:51:22 +0000 |
commit | 99e293b5b26ffdebbdb81b999bb2aa42d868db2e (patch) | |
tree | 0f9daaf7646fec488dd42f869d075b1d6f59a9ce /src/ccl.c | |
parent | 8e4cd685a55df89052a764ed38fe95827218ca75 (diff) | |
download | emacs-99e293b5b26ffdebbdb81b999bb2aa42d868db2e.tar.gz emacs-99e293b5b26ffdebbdb81b999bb2aa42d868db2e.tar.bz2 emacs-99e293b5b26ffdebbdb81b999bb2aa42d868db2e.zip |
(Fccl_execute_on_string): Fix the condition of loop.
Diffstat (limited to 'src/ccl.c')
-rw-r--r-- | src/ccl.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/ccl.c b/src/ccl.c index 55e7422511c..528e7d5a435 100644 --- a/src/ccl.c +++ b/src/ccl.c @@ -2023,7 +2023,7 @@ See the documentation of `define-ccl-program' for the detail of CCL program. */ consumed_chars = consumed_bytes = 0; produced_chars = 0; - while (consumed_bytes < str_bytes) + while (1) { const unsigned char *p = SDATA (str) + consumed_bytes; const unsigned char *endp = SDATA (str) + str_bytes; @@ -2047,8 +2047,6 @@ See the documentation of `define-ccl-program' for the detail of CCL program. */ { ccl_driver (&ccl, src, destination, src_size, CCL_EXECUTE_BUF_SIZE, Qnil); - if (ccl.status != CCL_STAT_SUSPEND_BY_DST) - break; produced_chars += ccl.produced; if (NILP (unibyte_p)) { @@ -2077,6 +2075,8 @@ See the documentation of `define-ccl-program' for the detail of CCL program. */ } src += ccl.consumed; src_size -= ccl.consumed; + if (ccl.status != CCL_STAT_SUSPEND_BY_DST) + break; } if (ccl.status != CCL_STAT_SUSPEND_BY_SRC) |