summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenichi Handa <handa@m17n.org>2004-04-15 01:01:44 +0000
committerKenichi Handa <handa@m17n.org>2004-04-15 01:01:44 +0000
commit1b9d98764d1a5197dee2eafcb02c0dd7ae59d75c (patch)
tree8f477f1555b552a372e895edea13f5d3ba8f7b6a
parent7bd9c08341694defe8b40d9c0d7efa75fb505ecb (diff)
downloademacs-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.el18
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)