From 8a0e01e2a6da3180447bd3c707e3933951461672 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Wed, 26 Nov 2003 11:54:07 +0000 Subject: [PATCH] (auto-compose-chars): Fix previous change. --- lisp/composite.el | 47 ++++++++++++++++++++++++----------------------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/lisp/composite.el b/lisp/composite.el index 4f8f1cb4ce2..0b91656d477 100644 --- a/lisp/composite.el +++ b/lisp/composite.el @@ -411,29 +411,30 @@ This function is the default value of `auto-composition-function' (which see)." (limit (if string (length string) (point-max))) ch func newpos) (setq limit (or (text-property-any pos limit 'auto-composed t string) - limit)) - (catch 'tag - (if string - (while (< pos limit) - (setq ch (aref string pos)) - (if (= ch ?\n) - (throw 'tag nil)) - (setq func (aref composition-function-table ch)) - (if (and (functionp func) - (setq newpos (funcall func pos string)) - (> newpos pos)) - (setq pos newpos) - (setq pos (1+ pos)))) - (while (< pos limit) - (setq ch (char-after pos)) - (if (= ch ?\n) - (throw 'tag nil)) - (setq func (aref composition-function-table ch)) - (if (and (functionp func) - (setq newpos (funcall func pos string)) - (> newpos pos)) - (setq pos newpos) - (setq pos (1+ pos)))))) + limit) + pos (catch 'tag + (if string + (while (< pos limit) + (setq ch (aref string pos)) + (if (= ch ?\n) + (throw 'tag (1+ pos))) + (setq func (aref composition-function-table ch)) + (if (and (functionp func) + (setq newpos (funcall func pos string)) + (> newpos pos)) + (setq pos newpos) + (setq pos (1+ pos)))) + (while (< pos limit) + (setq ch (char-after pos)) + (if (= ch ?\n) + (throw 'tag (1+ pos))) + (setq func (aref composition-function-table ch)) + (if (and (functionp func) + (setq newpos (funcall func pos string)) + (> newpos pos)) + (setq pos newpos) + (setq pos (1+ pos))))) + limit)) (put-text-property start pos 'auto-composed t string)))))) (setq auto-composition-function 'auto-compose-chars) -- 2.39.2