summaryrefslogtreecommitdiff
path: root/lisp/international/utf-8.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/international/utf-8.el')
-rw-r--r--lisp/international/utf-8.el24
1 files changed, 14 insertions, 10 deletions
diff --git a/lisp/international/utf-8.el b/lisp/international/utf-8.el
index 681d2454dc1..39dd3239bf7 100644
--- a/lisp/international/utf-8.el
+++ b/lisp/international/utf-8.el
@@ -991,16 +991,20 @@ Also compose particular scripts if `utf-8-compose-scripts' is non-nil."
(set-buffer-multibyte nil)))
(when (and utf-8-compose-scripts (> length 1))
- ;; These currently have definitions which cover the relevant
- ;; unicodes. We could avoid loading thai-util &c by checking
- ;; whether the region contains any characters with the appropriate
- ;; categories. There aren't yet Unicode-based rules for Tibetan.
- (diacritic-compose-region (point-max) (point-min))
- (thai-compose-region (point-max) (point-min))
- (lao-compose-region (point-max) (point-min))
- (devanagari-compose-region (point-max) (point-min))
- (malayalam-compose-region (point-max) (point-min))
- (tamil-compose-region (point-max) (point-min)))
+ ;; This let-binding avoids recursive auto-loading. And, we
+ ;; anyway don't have to run the following code while
+ ;; auto-loading.
+ (let ((utf-8-compose-scripts nil))
+ ;; These currently have definitions which cover the relevant
+ ;; unicodes. We could avoid loading thai-util &c by checking
+ ;; whether the region contains any characters with the appropriate
+ ;; categories. There aren't yet Unicode-based rules for Tibetan.
+ (diacritic-compose-region (point-max) (point-min))
+ (thai-compose-region (point-max) (point-min))
+ (lao-compose-region (point-max) (point-min))
+ (devanagari-compose-region (point-max) (point-min))
+ (malayalam-compose-region (point-max) (point-min))
+ (tamil-compose-region (point-max) (point-min))))
(- (point-max) (point-min)))))
(defun utf-8-pre-write-conversion (beg end)