summaryrefslogtreecommitdiff
path: root/vms/vms.c
diff options
context:
space:
mode:
authorCraig A. Berry <craigberry@mac.com>2016-02-04 16:26:05 -0600
committerCraig A. Berry <craigberry@mac.com>2016-02-04 17:02:28 -0600
commit99b868c158706f13b5c131e0b386563f4b882f3e (patch)
tree1d7a1eff50e812ee1b637bf7796c3ee762ffc898 /vms/vms.c
parentb396d0d86920a7b29522c9a80c7939a3487b4ccd (diff)
downloadperl-99b868c158706f13b5c131e0b386563f4b882f3e.tar.gz
Do environ key case consistently on VMS.
For those %ENV elements based on the CRTL environ array, we've always preserved case when setting them but done look-ups only after upcasing the key first, which makes lower- or mixed-case entries go missing. So make them consistently case-preserved and in the docs distinguish this behavior from the case-blind behavior of keys for %ENV entries based on logical namees and DCL symbols, which remains unchanged.
Diffstat (limited to 'vms/vms.c')
-rw-r--r--vms/vms.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/vms/vms.c b/vms/vms.c
index 044a041b06..5367840c9e 100644
--- a/vms/vms.c
+++ b/vms/vms.c
@@ -920,7 +920,7 @@ Perl_vmstrnenv(const char *lnm, char *eqv, unsigned long int idx,
for (i = 0; environ[i]; i++) {
if ((eq = strchr(environ[i],'=')) &&
lnmdsc.dsc$w_length == (eq - environ[i]) &&
- !strncmp(environ[i],uplnm,eq - environ[i])) {
+ !strncmp(environ[i],lnm,eq - environ[i])) {
eq++;
for (eqvlen = 0; eq[eqvlen]; eqvlen++) eqv[eqvlen] = eq[eqvlen];
if (!eqvlen) continue;