diff lisp/mule/mule-x-init.el @ 4103:b4f4e0cc90f1

[xemacs-hg @ 2007-08-07 23:08:47 by aidan] Eliminate byte compiler warnings, give nicer errors in the absence of packages.
author aidan
date Tue, 07 Aug 2007 23:09:22 +0000
parents 79c6ff3eef26
children e34711681f30
line wrap: on
line diff
--- a/lisp/mule/mule-x-init.el	Tue Aug 07 21:51:12 2007 +0000
+++ b/lisp/mule/mule-x-init.el	Tue Aug 07 23:09:22 2007 +0000
@@ -50,13 +50,14 @@
 	     (and width1 width2 (eq (+ width1 width1) width2)))))
 
     (when (eq 'x (device-type))
-      (condition-case nil
-	  (unless (twice-as-wide 'ascii fullwidth-charset)
-	    (set-charset-registry 'ascii roman-registry)
-	    (unless (twice-as-wide 'ascii fullwidth-charset)
-	      ;; Restore if roman-registry didn't help
-	      (set-charset-registry 'ascii "iso8859-1")))
-	(error (set-charset-registry 'ascii "iso8859-1"))))))
+      (let ((original-registries (charset-registries 'ascii)))
+        (condition-case nil
+            (unless (twice-as-wide 'ascii fullwidth-charset)
+              (set-charset-registries 'ascii (vector roman-registry))
+              (unless (twice-as-wide 'ascii fullwidth-charset)
+                ;; Restore if roman-registry didn't help
+                (set-charset-registries 'ascii original-registries)))
+          (error (set-charset-registries 'ascii original-registries)))))))
 
 ;;;;