]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix 'fontset-name-p'
authorEli Zaretskii <eliz@gnu.org>
Sun, 10 Dec 2017 17:45:25 +0000 (19:45 +0200)
committerEli Zaretskii <eliz@gnu.org>
Sun, 10 Dec 2017 17:45:25 +0000 (19:45 +0200)
* lisp/international/fontset.el (fontset-name-p): Make the
function work with full fontset names and fontset alias names.

lisp/international/fontset.el

index c6c62ef0a0c43d32738388a7e743926748769f69..b7511d90b4183f6e1411aeb66777ba0d4c4e8184 100644 (file)
@@ -1147,10 +1147,14 @@ given from DEFAULT-SPEC."
 (defun fontset-name-p (fontset)
   "Return non-nil if FONTSET is valid as fontset name.
 A valid fontset name should conform to XLFD (X Logical Font Description)
-with \"fontset\" in `<CHARSET_REGISTRY>' field."
-  (and (string-match xlfd-tight-regexp fontset)
-       (string= (match-string (1+ xlfd-regexp-registry-subnum) fontset)
-               "fontset")))
+with \"fontset-SOMETHING\" in `<CHARSET_REGISTRY>' field.
+A fontset alias name recorded in `fontset-alias-alist' is also a valid
+fontset name."
+  (or (and (string-match xlfd-tight-regexp fontset)
+           (let ((registry
+                  (match-string (1+ xlfd-regexp-registry-subnum) fontset)))
+             (= 0 (string-match "\\`fontset-" registry))))
+      (consp (rassoc fontset fontset-alias-alist))))
 
 (declare-function fontset-list "fontset.c" ())