From d63fd08403359531feb367118e64c2504075b024 Mon Sep 17 00:00:00 2001 From: ewt Date: Mon, 3 Nov 1997 20:17:45 +0000 Subject: [PATCH] handle empty files as bad magic, not read errors CVS patchset: 1891 CVS date: 1997/11/03 20:17:45 --- lib/package.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/package.c b/lib/package.c index 0dd3a4d..feee098 100644 --- a/lib/package.c +++ b/lib/package.c @@ -2,6 +2,7 @@ #include #include #include +#include #include #include "errno.h" @@ -29,13 +30,17 @@ static int readPackageHeaders(int fd, struct rpmlead * leadPtr, struct oldrpmlead * oldLead; int_8 arch; int isSource; + struct stat sb; hdr = hdrPtr ? hdrPtr : &hdrBlock; lead = leadPtr ? leadPtr : &leadBlock; oldLead = (struct oldrpmlead *) lead; - if (readLead(fd, lead)) { + fstat(fd, &sb); + if (sb.st_size < 4) return 1; + + if ((rc = readLead(fd, lead))) { return 2; } -- 2.7.4