diff options
| author | Kenichi Handa | 2006-03-03 05:13:48 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2006-03-03 05:13:48 +0000 |
| commit | edeef4217bab7b5afdd01b1ddfa8b4fde74f5867 (patch) | |
| tree | da709395407cc34c09f00be32def49575a6ad7a8 /src | |
| parent | 2cf69ec1b27388fca4c91cb3f60c6429270d7aef (diff) | |
| download | emacs-edeef4217bab7b5afdd01b1ddfa8b4fde74f5867.tar.gz emacs-edeef4217bab7b5afdd01b1ddfa8b4fde74f5867.zip | |
(Fccl_execute_on_string): Fix the condition of terminating
the loop. When quitted, show a proper error message.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ccl.c | 8 |
1 files changed, 5 insertions, 3 deletions
| @@ -2167,13 +2167,15 @@ usage: (ccl-execute-on-string CCL-PROGRAM STATUS STRING &optional CONTINUE UNIBY | |||
| 2167 | break; | 2167 | break; |
| 2168 | } | 2168 | } |
| 2169 | 2169 | ||
| 2170 | if (ccl.status != CCL_STAT_SUSPEND_BY_SRC) | 2170 | if (ccl.status != CCL_STAT_SUSPEND_BY_SRC |
| 2171 | || str_chars == consumed_chars) | ||
| 2171 | break; | 2172 | break; |
| 2172 | } | 2173 | } |
| 2173 | 2174 | ||
| 2174 | if (ccl.status != CCL_STAT_SUCCESS | 2175 | if (ccl.status == CCL_STAT_INVALID_CMD) |
| 2175 | && ccl.status != CCL_STAT_SUSPEND_BY_SRC) | ||
| 2176 | error ("Error in CCL program at %dth code", ccl.ic); | 2176 | error ("Error in CCL program at %dth code", ccl.ic); |
| 2177 | if (ccl.status == CCL_STAT_QUIT) | ||
| 2178 | error ("CCL program interrupted at %dth code", ccl.ic); | ||
| 2177 | 2179 | ||
| 2178 | for (i = 0; i < 8; i++) | 2180 | for (i = 0; i < 8; i++) |
| 2179 | ASET (status, i, make_number (ccl.reg[i])); | 2181 | ASET (status, i, make_number (ccl.reg[i])); |