Subject: bug#67540: 29.1; Emacs on Windows incorrectly capitalizes some environment variables

From: Eli Zaretskii <[email-masked]>
Date: Fri, 01 Dec 2023 09:14:09 +0200

> From: Dave Abrahams <[email-masked]>
> Date: Thu, 30 Nov 2023 16:13:03 -0800
> Cc: Jim Porter <[email-masked]>,
>  [email-masked]
> 
>  It might be nice for Emacs to preserve the case of any existing 
>  environment variables on MS-Windows to be on the safe side though...
> 
>  That's impossible in practice: we'd need to "fix" every single Lisp
>  program and every place in the Emacs C code that compare against
>  "PATH" case-sensitively.  And what about user confusion, for those of
>  us who mostly work on Unix, but sometimes need to work on Windows?
> 
> I don't think this is that hard to fix without breaking anybody.  Simply maintain a mapping of in-Emacs
> upcased environment variable names to the lowercased counterparts from which they came, and
> map back when setting up a process environment.

This will not work reliably, because many programs invoked by Emacs as
sub-processes are ported Unix and GNU/Linux programs, and those expect
PATH, not Path in the environment.