Subject: ranlib fix for odd length long final file names (PR #82)

Submitted by:	Peter Dufault <dufault@hda.com>
This commit is contained in:
Nate Williams 1994-12-23 22:55:00 +00:00
parent 45f4664c72
commit 637cb583c9
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=5213

View File

@ -276,6 +276,7 @@ copy_ar(cfp, size)
CF *cfp;
off_t size;
{
int pad_odd_read;
static char pad = '\n';
off_t sz;
int from, nr, nw, off, to;
@ -299,8 +300,12 @@ copy_ar(cfp, size)
error(cfp->rname);
}
if (cfp->flags & RPAD && (size + chdr.lname) & 1 &&
(nr = read(from, buf, 1)) != 1) {
if (already_written)
pad_odd_read = (cfp->flags & RPAD) && ((size + chdr.lname) & 1);
else
pad_odd_read = (cfp->flags & RPAD) && (size & 1);
if (pad_odd_read && (nr = read(from, buf, 1)) != 1) {
if (nr == 0)
badfmt();
error(cfp->rname);