]> git.eshelyaron.com Git - emacs.git/commitdiff
Minor fix in 'w32-find-non-USB-fonts'
authorEli Zaretskii <eliz@gnu.org>
Mon, 27 Sep 2021 09:28:54 +0000 (12:28 +0300)
committerEli Zaretskii <eliz@gnu.org>
Mon, 27 Sep 2021 09:28:54 +0000 (12:28 +0300)
* lisp/term/w32-win.el (w32--filter-USB-scripts): Handle
representative characters given as a vector, not a list.

lisp/term/w32-win.el

index 80afcb360408c818b69c0280d0f2807724cc0def..5d1dc6066764cc8d124183150e84c660440f4be9 100644 (file)
@@ -532,7 +532,7 @@ characters from these blocks.")
   (let (val)
     (dolist (elt script-representative-chars)
       (let ((subranges w32-no-usb-subranges)
-            (chars (cdr elt))
+            (chars (append (cdr elt) nil)) ; handle vectors as well
             ch found subrange)
         (while (and (consp chars) (not found))
           (setq ch (car chars)
@@ -595,7 +595,11 @@ default font on FRAME, or its best approximation."
                                              0 nchars script-chars)
                           '[nil]))
                   ;; Does this font support ALL of the script's
-                  ;; representative characters?
+                  ;; representative characters?  Note that, when the
+                  ;; representative characters are specified as a
+                  ;; vector, this is a more stringent test than font
+                  ;; selection does, because supporting _any_
+                  ;; character from the vector is enough.
                   (setq idx 0)
                   (while (and (< idx nchars) (not (null (aref glyphs idx))))
                     (setq idx (1+ idx)))