summaryrefslogtreecommitdiff
path: root/vms
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2014-04-18 10:57:38 +0300
committerArnold D. Robbins <arnold@skeeve.com>2014-04-18 10:57:38 +0300
commitf58c712b921b976b43d89dc45c2beaf115b3143e (patch)
treeae6e323b090945bb7ebdb7733316e35569eb32c4 /vms
parent1c8936c4d92b34c9c70ff8083e67d77c7fcfb439 (diff)
downloadgawk-f58c712b921b976b43d89dc45c2beaf115b3143e.tar.gz
Fix problem with file links on Vax/VMS.
Diffstat (limited to 'vms')
-rw-r--r--vms/ChangeLog4
-rw-r--r--vms/gawk_alias_setup.com33
2 files changed, 35 insertions, 2 deletions
diff --git a/vms/ChangeLog b/vms/ChangeLog
index 1bb34475..9e055cf4 100644
--- a/vms/ChangeLog
+++ b/vms/ChangeLog
@@ -1,3 +1,7 @@
+2014-04-18 John E. Malmberg <wb8tyw@qsl.net>
+
+ * gawk_alias_setup.com: Fix problem with file links on Vax/VMS.
+
2014-04-08 Arnold D. Robbins <arnold@skeeve.com>
* 4.1.1: Release tar ball made.
diff --git a/vms/gawk_alias_setup.com b/vms/gawk_alias_setup.com
index 73f70d15..a7f13f4b 100644
--- a/vms/gawk_alias_setup.com
+++ b/vms/gawk_alias_setup.com
@@ -59,14 +59,43 @@ $ alias = "gnv$gnu:''p4'''p3'"
$ endif
$ if f$search(file) .nes. ""
$ then
+$ fid = ""
+$ mess = f$environment("message")
+$ if f$search(alias) .nes. ""
+$ then
+$ on warn then goto fix_link
+$ set message/nofac/nosev/noident/notext
+$ fid = f$file_attributes(alias, "FID")
+$ endif
+$ goto fix_link_end
+$fix_link:
+$ set file/remove 'alias';
+$fix_link_end:
+$ set message'mess'
$ if f$search(alias) .eqs. ""
$ then
$ set file/enter='alias' 'file'
$ endif
$ alias1 = alias + "exe"
-$ if (ftype .eqs. ".") .and. (f$search(alias1) .eqs. "")
+$ if (ftype .eqs. ".")
$ then
+$ fid = ""
+$ mess = f$environment("message")
+$ if f$search(alias1) .nes. ""
+$ then
+$ on warn then goto fix_link1
+$ set message/nofac/nosev/noident/notext
+$ fid = f$file_attributes(alias1, "FID")
+$ endif
+$ goto fix_link_end1
+$fix_link1:
+$ set file/remove 'alias1';
+$fix_link_end1:
+$ set message'mess'
+$ if (f$search(alias1) .eqs. "")
+$ then
$ set file/enter='alias1' 'file'
+$ endif
$ endif
$ endif
$ exit
@@ -78,7 +107,7 @@ $ if p4 .eqs. "" then p4 = p2
$ ftype = f$element(1, ".", p1)
$ if ftype .eqs. "."
$ then
-$ file = "gnv$gnu:''p2'''p1'.EXE"
+$ file = "gnv$gnu:''p2'gnv$''p1'.EXE"
$ alias = "gnv$gnu:''p4'''p3'."
$ else
$ file = "gnv$gnu:''p2'''p1'"