From 5d582d4ba06495a95854c45828399f7edfe51a50 Mon Sep 17 00:00:00 2001 From: Paul Smith Date: Mon, 21 May 2001 06:16:00 +0000 Subject: Some VMS fixes sent by John Fowler. Fix: make flags on some lines of define/endef don't affect other lines --- arscan.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'arscan.c') diff --git a/arscan.c b/arscan.c index 5cadbe6..03ecb7c 100644 --- a/arscan.c +++ b/arscan.c @@ -66,7 +66,7 @@ VMS_get_member_info (module, rfa) status = lbr$set_module (&VMS_lib_idx, rfa, &bufdesc, &bufdesc.dsc$w_length, 0); - if (! status) + if (! (status & 1)) { error (NILF, _("lbr$set_module failed to extract module info, status = %d"), status); @@ -79,7 +79,11 @@ VMS_get_member_info (module, rfa) mhd = (struct mhddef *) filename; #ifdef __DECC - val = decc$fix_time (&mhd->mhd$l_datim); + /* John Fowler writes this is needed in his environment, + * but that decc$fix_time() isn't documented to work this way. Let me + * know if this causes problems in other VMS environments. + */ + val = decc$fix_time (&mhd->mhd$l_datim) + timezone - daylight*3600; #endif for (i = 0; i < module->dsc$w_length; i++) @@ -150,7 +154,7 @@ ar_scan (archive, function, arg) status = lbr$ini_control (&VMS_lib_idx, &func, &type, 0); - if (! status) + if (! (status & 1)) { error (NILF, _("lbr$ini_control failed with status = %d"),status); return -2; @@ -161,7 +165,7 @@ ar_scan (archive, function, arg) status = lbr$open (&VMS_lib_idx, &libdesc, 0, 0, 0, 0, 0); - if (! status) + if (! (status & 1)) { error (NILF, _("unable to open library `%s' to lookup member `%s'"), archive, (char *)arg); -- cgit v1.2.3