diff lisp/process.el @ 4611:9c97a5a8c241

Backed out changeset 38e8af61f38d As Vin points out in 20a807210902110554s40c75beai334c005940f6446e@mail.gmail.com , the Windows-specific coding systems have no #'query-coding-region support right now, it is not yet appropriate to require #'query-coding-region support on Mule builds.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 11 Feb 2009 15:30:59 +0000
parents 38e8af61f38d
children 308d34e9f07d
line wrap: on
line diff
--- a/lisp/process.el	Wed Feb 11 12:14:28 2009 +0000
+++ b/lisp/process.el	Wed Feb 11 15:30:59 2009 +0000
@@ -599,10 +599,17 @@
     (if substitute-env-vars
 	(setq value (substitute-env-vars value))))
 
-  ;; XEmacs change: check whether the environment understands this variable,
-  ;; using our function for exactly that, don't use
-  ;; #'find-coding-systems-string or trust `undecided' to encode it.
-  (query-coding-string (concat variable "=" value) 'native nil t)
+  ;; GNU fuck around with coding systems here. We do it at a much lower
+  ;; level; an equivalent of the following code of Handa's would be
+  ;; worthwhile here, though:
+
+; (let ((codings (find-coding-systems-string (concat variable value))))
+;   (unless (or (eq 'undecided (car codings))
+;               (memq (coding-system-base locale-coding-system) codings))
+;     (error "Can't encode `%s=%s' with `locale-coding-system'"
+;            variable (or value "")))))
+
+  ;; But then right now our find-coding-systems analogue is in packages.
 
   (if (string-match "=" variable)
       (error "Environment variable name `%s' contains `='" variable)