From owner-svn-src-stable-8@FreeBSD.ORG Tue Oct 12 17:12:13 2010 Return-Path: Delivered-To: svn-src-stable-8@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 575841065670; Tue, 12 Oct 2010 17:12:13 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 451DD8FC1C; Tue, 12 Oct 2010 17:12:13 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o9CHCDrm054635; Tue, 12 Oct 2010 17:12:13 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o9CHCDV9054633; Tue, 12 Oct 2010 17:12:13 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201010121712.o9CHCDV9054633@svn.freebsd.org> From: John Baldwin Date: Tue, 12 Oct 2010 17:12:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r213732 - stable/8/contrib/csup X-BeenThere: svn-src-stable-8@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 8-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Oct 2010 17:12:13 -0000 Author: jhb Date: Tue Oct 12 17:12:13 2010 New Revision: 213732 URL: http://svn.freebsd.org/changeset/base/213732 Log: MFC 213300: If an RCS file is truncated, rcsfile_getdelta() will return NULL. Instead of faulting, check for NULL. However, returning an error would cause csup to just abort the entire update. Instead, break out of the loop and return ok. The attempts to update the file will trigger a MD5 failure which will cause csup to download the entire file as a fixup. Modified: stable/8/contrib/csup/rcsparse.c Directory Properties: stable/8/contrib/csup/ (props changed) Modified: stable/8/contrib/csup/rcsparse.c ============================================================================== --- stable/8/contrib/csup/rcsparse.c Tue Oct 12 17:09:33 2010 (r213731) +++ stable/8/contrib/csup/rcsparse.c Tue Oct 12 17:12:13 2010 (r213732) @@ -318,6 +318,14 @@ parse_deltatexts(struct rcsfile *rf, yys d = rcsfile_getdelta(rf, revnum); free(revnum); + /* + * XXX: The RCS file is corrupt, but lie and say it is ok. + * If it is actually broken, then the MD5 mismatch will + * trigger a fixup. + */ + if (d == NULL) + return (0); + /* log string */ asserttoken(sp, KEYWORD); asserttoken(sp, STRING);