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