walls@killer.UUCP (Monty Walls) (06/11/88)
--------------------------------------------------------------------------
Thanks for bring to my attention the fence post behavior in
ar(v1.3). I'm sorry I didn't get to it sooner after hearing about it
but I've been installing the 1.2 compiler on my system(had to recompile
my libraries, still haven't completely finished). Enclosed is a
diff file to fix both the fence posting, strcpy, and the print statements.
-Monty Walls
------------------------------CUT HERE------------------------------------
echo x - ar.c.diff
gres '^X' '' > ar.c.diff << '/'
X41a42
X> * fixed fencepost behavior in names - 6/10/88 - nwc & mrw
X123c124
X< extern int strcmp();
X---
X> extern int strncmp();
X463c464
X< fprintf(stderr,"Error: %s could not creat %s\n",progname, member->ar_name);
X---
X> fprintf(stderr,"Error: %s could not creat %-14.14s\n",progname, member->ar_name);
X467c468
X< fprintf(stdout,"x - %s\n",member->ar_name);
X---
X> fprintf(stdout,"x - %-14.14s\n",member->ar_name);
X471c472
X< fprintf(stdout,"p - %s\n",member->ar_name);
X---
X> fprintf(stdout,"p - %-14.14s\n",member->ar_name);
X511c512
X< fprintf(stderr,"Error: %s - read error on %s\n",progname, member->ar_name);
X---
X> fprintf(stderr,"Error: %s - read error on %-14.14s\n",progname, member->ar_name);
X540c541
X< strcpy(member.ar_name, basename(name));
X---
X> strncpy(member.ar_name, basename(name),14);
X550c551
X< if (verbose) fprintf(stdout, "not %s - %s\n",mess, name);
X---
X> if (verbose) fprintf(stdout, "not %-14.14s - %-14.14s\n",mess, name);
X556c557
X< fprintf(stdout, "%s - %s\n",mess, name);
X---
X> fprintf(stdout, "%s - %-14.14s\n",mess, name);
X597c598
X< if (verbose) fprintf(stdout, "m - %s\n", member->ar_name);
X---
X> if (verbose) fprintf(stdout, "m - %-14.14s\n", member->ar_name);
X677c678
X< if (strcmp(basename(argv[a-1]),member->ar_name) == 0) {
X---
X> if (strncmp(basename(argv[a-1]),member->ar_name,14) == 0) {
X719c720
X< if (posname && strcmp(posname, member->ar_name) == 0)
X---
X> if (posname && strncmp(posname, member->ar_name, 14) == 0)
X724c725
X< if (strcmp(basename(argv[a-1]),member->ar_name) == 0) {
X---
X> if (strncmp(basename(argv[a-1]),member->ar_name,14) == 0) {
X743c744
X< if (verbose) fprintf(stdout,"d - %s\n",member->ar_name);
X---
X> if (verbose) fprintf(stdout,"d - %-14.14s\n",member->ar_name);
X751c752
X< fprintf(stderr,"Error: %s cannot find file %s\n",progname,posname);
X---
X> fprintf(stderr,"Error: %s cannot find file %-14.14s\n",progname,posname);
/
------------------------------CUT HERE------------------------------------
Monty Walls
MIS Division, Tech. Support
Oklahoma Tax Commission
2501 N. Lincoln
OKC, OK, 73194