From owner-freebsd-bugs@FreeBSD.ORG Wed Jan 6 18:00:21 2010 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 79CE810656A3 for ; Wed, 6 Jan 2010 18:00:20 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 1F4718FC17 for ; Wed, 6 Jan 2010 18:00:20 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id o06I0KLl029394 for ; Wed, 6 Jan 2010 18:00:20 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id o06I0JfO029393; Wed, 6 Jan 2010 18:00:20 GMT (envelope-from gnats) Date: Wed, 6 Jan 2010 18:00:20 GMT Message-Id: <201001061800.o06I0JfO029393@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Antoine Brodin Cc: Subject: Re: bin/142384: sync fsck_msdosfs with OpenBSD X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Antoine Brodin List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2010 18:00:21 -0000 The following reply was made to PR bin/142384; it has been noted by GNATS. From: Antoine Brodin To: Pedro Giffuni Cc: freebsd-gnats-submit@freebsd.org Subject: Re: bin/142384: sync fsck_msdosfs with OpenBSD Date: Wed, 6 Jan 2010 18:24:20 +0100 On Wed, Jan 6, 2010 at 5:50 PM, Pedro Giffuni wrote: [snip] > diff -ru fsck_msdosfs.orig/boot.c fsck_msdosfs/boot.c > --- fsck_msdosfs.orig/boot.c =A0 =A02010-01-06 11:07:24.000000000 +0000 > +++ fsck_msdosfs/boot.c 2010-01-06 11:19:21.000000000 +0000 > @@ -55,9 +55,9 @@ > =A0 =A0 =A0 =A0u_char block[DOSBOOTBLOCKSIZE]; > =A0 =A0 =A0 =A0u_char fsinfo[2 * DOSBOOTBLOCKSIZE]; > =A0 =A0 =A0 =A0u_char backup[DOSBOOTBLOCKSIZE]; > - =A0 =A0 =A0 int ret =3D FSOK; > + =A0 =A0 =A0 int n, ret =3D FSOK; > > - =A0 =A0 =A0 if (read(dosfs, block, sizeof block) < sizeof block) { > + =A0 =A0 =A0 if ((n=3D(read(dosfs, block, sizeof block) < sizeof block))= =3D=3D -1 || n !=3D sizeof block) { > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0perror("could not read boot block"); > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0return FSFATAL; > =A0 =A0 =A0 =A0} This does not look right, you probably want: if ((n =3D read(dosfs, block, sizeof(block))) =3D=3D -1 || n !=3D sizeof(b= lock)) Cheers, Antoine