From: Juanma Barranquero Date: Thu, 11 Dec 2008 09:40:44 +0000 (+0000) Subject: Move decoding of locale info from Lisp to C. X-Git-Tag: emacs-pretest-23.0.90~1155 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=011a014396e59cb621470309ff7865e3972a2953;p=emacs.git Move decoding of locale info from Lisp to C. * src/w32proc.c (Fw32_get_locale_info): Decode long form of locale name. * lisp/w32-fns.el (w32-list-locales): Revert part of 2008-10-17 change; decoding of long locale info is now done in `w32-get-locale-info'. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4e6b3c34ed9..5b2074c7743 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2008-12-11 Juanma Barranquero + + * w32-fns.el (w32-list-locales): Revert part of 2008-10-17 change; + decoding of long locale info is now done in `w32-get-locale-info'. + 2008-12-11 Chong Yidong * progmodes/ruby-mode.el: Fix auto-mode-alist entry. diff --git a/lisp/w32-fns.el b/lisp/w32-fns.el index 5228e4f8fdf..c7284fafd36 100644 --- a/lisp/w32-fns.el +++ b/lisp/w32-fns.el @@ -221,15 +221,11 @@ You should set this to t when using a non-system shell.\n\n")))) (setq w32-valid-locales (sort (w32-get-valid-locale-ids) #'<))) (with-output-to-temp-buffer "*Supported Locales*" (princ "LCID\tAbbrev\tFull name\n\n") - (princ (decode-coding-string (mapconcat - (lambda (x) - (format "%d\t%s\t%s" - x - (w32-get-locale-info x) - (w32-get-locale-info x t))) - w32-valid-locales "\n") - locale-coding-system)) - (princ "\n"))) + (dolist (locale w32-valid-locales) + (princ (format "%d\t%s\t%s\n" + locale + (w32-get-locale-info locale) + (w32-get-locale-info locale t)))))) ;;; Setup Info-default-directory-list to include the info directory ;;; near where Emacs executable was installed. We used to set INFOPATH, diff --git a/src/ChangeLog b/src/ChangeLog index 14d02758271..453c61bbbb2 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2008-12-11 Juanma Barranquero + + * w32proc.c (Fw32_get_locale_info): Decode long form of locale name. + 2008-12-11 Juanma Barranquero * process.c (Fsystem_process_attributes, syms_of_process): diff --git a/src/w32proc.c b/src/w32proc.c index 867ceb60f37..3e5dcd29325 100644 --- a/src/w32proc.c +++ b/src/w32proc.c @@ -1983,7 +1983,7 @@ If LCID (a 16-bit number) is not a valid locale, the result is nil. */) LOCALE_SLANGUAGE | LOCALE_USE_CP_ACP, full_name, sizeof (full_name)); if (got_full) - return build_string (full_name); + return DECODE_SYSTEM (build_string (full_name)); } else if (NUMBERP (longform)) {