diff options
author | Charles Bailey <bailey@newman.upenn.edu> | 1998-01-02 22:54:29 -0500 |
---|---|---|
committer | Malcolm Beattie <mbeattie@sable.ox.ac.uk> | 1998-01-08 12:56:31 +0000 |
commit | fc1ce8cc0aa3c1d2926edfb2f302ea8c60b40168 (patch) | |
tree | d739c6f7d0538e687f6a8a3be61793919216e4f7 /vms/vms.c | |
parent | 0151c6efc77004eadcc86505e0e29b10208d3f66 (diff) | |
download | perl-fc1ce8cc0aa3c1d2926edfb2f302ea8c60b40168.tar.gz |
Assorted VMS patches (mostly VMS makefile update for new headers):
Subject: [PATCH] VMS update for 5.004_56
p4raw-id: //depot/perl@403
Diffstat (limited to 'vms/vms.c')
-rw-r--r-- | vms/vms.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -1019,6 +1019,14 @@ static char *do_fileify_dirspec(char *dir,char *buf,int ts) if (*(cp1+2) == '.') cp1++; if (*(cp1+2) == '/' || *(cp1+2) == '\0') { if (do_tovmsspec(dir,vmsdir,0) == NULL) return NULL; + if (strchr(vmsdir,'/') != NULL) { + /* If do_tovmsspec() returned it, it must have VMS syntax + * delimiters in it, so it's a mixed VMS/Unix spec. We take + * the time to check this here only so we avoid a recursion + * loop; otherwise, gigo. + */ + set_errno(EINVAL); set_vaxc_errno(RMS$_SYN); return NULL; + } if (do_fileify_dirspec(vmsdir,trndir,0) == NULL) return NULL; return do_tounixspec(trndir,buf,ts); } |