1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.
include <config.h>
include <syserr.h>
include <knet.h>
include <fio.h>
# FPATHNAME -- Return the full OS pathname for a vfn. If no vfn is given
# (null string), the pathname of the current directory is returned. Do not
# try to make the pathname into a directory name; if it already is a directory
# name, however, it will remain so.
procedure fpathname (vfn, output_pathname, maxchars)
char vfn[ARB] # VFN of file
char output_pathname[maxchars] # pathname of file
int maxchars
int status
include <fio.com>
errchk filerr
begin
status = OK
if (vfn[1] == EOS)
call strpak (vfn, pathname, SZ_PATHNAME)
else iferr (call fmapfn (vfn, pathname, SZ_PATHNAME))
status = ERR
if (status != ERR) {
call strupk (pathname, pathname, SZ_PATHNAME)
call zfpath (pathname, output_pathname, maxchars, status)
}
if (status == ERR)
call filerr (vfn, SYS_FPATHNAME)
end
|