diff options
author | John E. Malmberg <wb8tyw@qsl.net> | 2008-10-29 17:02:43 -0500 |
---|---|---|
committer | Craig A. Berry <craigberry@mac.com> | 2008-10-30 15:21:56 +0000 |
commit | cfbf46cd7f497ed348c167b5b6cce3852462ff45 (patch) | |
tree | 638aae844ca0761cfb23c8c21507cffdffc43a5a /vms | |
parent | e7d3eb55e8d38c7823883a2830dcecfddd108336 (diff) | |
download | perl-cfbf46cd7f497ed348c167b5b6cce3852462ff45.tar.gz |
[patch@34600] vms.c setup_cmddsc
From: "John E. Malmberg" <wb8tyw@qsl.net>
Message-id: <490923D3.90407@qsl.net>
Remove trailing dot when efs_charset is in effect.
p4raw-id: //depot/perl@34666
Diffstat (limited to 'vms')
-rw-r--r-- | vms/vms.c | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -9892,6 +9892,19 @@ setup_cmddsc(pTHX_ const char *incmd, int check_img, int *suggest_quote, *cp2 = '\0'; if (do_tovmsspec(resspec,cp,0,NULL)) { s = vmsspec; + + /* When a UNIX spec with no file type is translated to VMS, */ + /* A trailing '.' is appended under ODS-5 rules. */ + /* Here we do not want that trailing "." as it prevents */ + /* Looking for a implied ".exe" type. */ + if (decc_efs_charset) { + int i; + i = strlen(vmsspec); + if (vmsspec[i-1] == '.') { + vmsspec[i-1] = '\0'; + } + } + if (*rest) { for (cp2 = vmsspec + strlen(vmsspec); *rest && cp2 - vmsspec < sizeof vmsspec; |