From 757849cd93a9bc361a5113e3aaafe516773aad44 Mon Sep 17 00:00:00 2001 From: Paul Smith Date: Sat, 23 Nov 2013 22:23:52 -0500 Subject: [SV 40361] Don't use vsnprintf(), which is an ISO C99 function. * output.c (error, fatal, message): Take an extra argument specifying how many bytes are used by the formatted arguments. (get_buffer): New function that allocates the requested buffer size. Remove msc_vsnprintf(), vfmtconcat(), and fmtconcat() as unneeded. * makeint.h: Declare various helper macros for generating output. * *.c: Change all error(), fatal(), message() calls to use the macros, or pass the extra length argument directly. --- arscan.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'arscan.c') diff --git a/arscan.c b/arscan.c index 2b3cd5d..e49137b 100644 --- a/arscan.c +++ b/arscan.c @@ -37,7 +37,7 @@ this program. If not, see . */ static void *VMS_lib_idx; -static char *VMS_saved_memname; +static const char *VMS_saved_memname; static time_t VMS_member_date; @@ -64,8 +64,9 @@ VMS_get_member_info (struct dsc$descriptor_s *module, unsigned long *rfa) &bufdesc.dsc$w_length, 0); if (! (status & 1)) { - error (NILF, _("lbr$set_module() failed to extract module info, status = %d"), - status); + ON (error, NILF, + _("lbr$set_module() failed to extract module info, status = %d"), + status); lbr$close (&VMS_lib_idx); @@ -153,9 +154,10 @@ VMS_get_member_info (struct dsc$descriptor_s *module, unsigned long *rfa) Returns 0 if have scanned successfully. */ long int -ar_scan (const char *archive, ar_member_func_t function, const void *arg) +ar_scan (const char *archive, ar_member_func_t function, const void *varg) { char *p; + const char *arg = varg; static struct dsc$descriptor_s libdesc = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, NULL }; @@ -170,7 +172,7 @@ ar_scan (const char *archive, ar_member_func_t function, const void *arg) if (! (status & 1)) { - error (NILF, _("lbr$ini_control() failed with status = %d"), status); + ON (error, NILF, _("lbr$ini_control() failed with status = %d"), status); return -2; } @@ -182,12 +184,12 @@ ar_scan (const char *archive, ar_member_func_t function, const void *arg) if (! (status & 1)) { - error (NILF, _("unable to open library '%s' to lookup member '%s'"), - archive, (char *)arg); + OSS (error, NILF, _("unable to open library '%s' to lookup member '%s'"), + archive, arg); return -1; } - VMS_saved_memname = (char *)arg; + VMS_saved_memname = arg; /* For comparison, delete .obj from arg name. */ -- cgit v1.2.3