Commit 78dabc95 by Doug Rupp Committed by Arnaud Charlet

adaint.c (__gnat_to_canonical_file_spec [VMS]): Check for logical name and translate.

2005-03-29  Doug Rupp  <rupp@adacore.com>

	* adaint.c (__gnat_to_canonical_file_spec [VMS]): Check for logical
	name and translate.

From-SVN: r97167
parent a50c3345
......@@ -2204,18 +2204,29 @@ __gnat_to_canonical_dir_spec (char *dirspec, int prefixflag)
}
/* Translate a VMS syntax file specification into Unix syntax.
If no indicators of VMS syntax found, return input string. */
If no indicators of VMS syntax found, check if its an uppercase
alphanumeric_ name and if so try it out as an environment
variable (logical name). If all else fails return the
input string. */
char *
__gnat_to_canonical_file_spec (char *filespec)
{
char *filespec1;
strncpy (new_canonical_filespec, "", MAXPATH);
if (strchr (filespec, ']') || strchr (filespec, ':'))
{
strncpy (new_canonical_filespec,
(char *) decc$translate_vms (filespec),
MAXPATH);
(char *) decc$translate_vms (filespec), MAXPATH);
}
else if ((strlen (filespec) == strspn (filespec,
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_"))
&& (filespec1 = getenv (filespec)))
{
strncpy (new_canonical_filespec,
(char *) decc$translate_vms (filespec1), MAXPATH);
}
else
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment