diff options
author | Kenichi Handa <handa@m17n.org> | 2004-04-15 01:01:44 +0000 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2004-04-15 01:01:44 +0000 |
commit | 1b9d98764d1a5197dee2eafcb02c0dd7ae59d75c (patch) | |
tree | 8f477f1555b552a372e895edea13f5d3ba8f7b6a | |
parent | 7bd9c08341694defe8b40d9c0d7efa75fb505ecb (diff) | |
download | emacs-1b9d98764d1a5197dee2eafcb02c0dd7ae59d75c.tar.gz emacs-1b9d98764d1a5197dee2eafcb02c0dd7ae59d75c.tar.bz2 emacs-1b9d98764d1a5197dee2eafcb02c0dd7ae59d75c.zip |
(auto-compose-chars): Execute the main code in
condition-case.
-rw-r--r-- | lisp/composite.el | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/lisp/composite.el b/lisp/composite.el index 657bfa8658e..2590323304a 100644 --- a/lisp/composite.el +++ b/lisp/composite.el @@ -431,12 +431,15 @@ This function is the default value of `auto-composition-function' (which see)." (save-buffer-state nil (save-excursion (save-match-data - (let ((start pos) - (limit (if string (length string) (point-max))) - ch func newpos) - (setq limit (or (text-property-any pos limit 'auto-composed t string) - limit) - pos (catch 'tag + (condition-case nil + (let ((start pos) + (limit (if string (length string) (point-max))) + ch func newpos) + (setq limit + (or (text-property-any pos limit 'auto-composed t string) + limit) + pos + (catch 'tag (if string (while (< pos limit) (setq ch (aref string pos)) @@ -459,7 +462,8 @@ This function is the default value of `auto-composition-function' (which see)." (setq pos newpos) (setq pos (1+ pos))))) limit)) - (put-text-property start pos 'auto-composed t string)))))) + (put-text-property start pos 'auto-composed t string)) + (error nil)))))) (setq auto-composition-function 'auto-compose-chars) |