From owner-svn-src-all@FreeBSD.ORG Wed Feb 3 23:56:12 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8F1BD106566C; Wed, 3 Feb 2010 23:56:12 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 7DD4A8FC08; Wed, 3 Feb 2010 23:56:12 +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 o13NuCop046154; Wed, 3 Feb 2010 23:56:12 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o13NuCgR046151; Wed, 3 Feb 2010 23:56:12 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201002032356.o13NuCgR046151@svn.freebsd.org> From: Xin LI Date: Wed, 3 Feb 2010 23:56:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r203459 - head/sbin/dump X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Feb 2010 23:56:12 -0000 Author: delphij Date: Wed Feb 3 23:56:12 2010 New Revision: 203459 URL: http://svn.freebsd.org/changeset/base/203459 Log: Plug two memory leaks in error case. MFC after: 1 month Modified: head/sbin/dump/itime.c head/sbin/dump/main.c Modified: head/sbin/dump/itime.c ============================================================================== --- head/sbin/dump/itime.c Wed Feb 3 23:51:00 2010 (r203458) +++ head/sbin/dump/itime.c Wed Feb 3 23:56:12 2010 (r203459) @@ -106,8 +106,10 @@ readdumptimes(FILE *df) for (;;) { dtwalk = (struct dumptime *)calloc(1, sizeof (struct dumptime)); - if (getrecord(df, &(dtwalk->dt_value)) < 0) + if (getrecord(df, &(dtwalk->dt_value)) < 0) { + free(dtwalk); break; + } nddates++; SLIST_INSERT_HEAD(&dthead, dtwalk, dt_list); } Modified: head/sbin/dump/main.c ============================================================================== --- head/sbin/dump/main.c Wed Feb 3 23:51:00 2010 (r203458) +++ head/sbin/dump/main.c Wed Feb 3 23:56:12 2010 (r203459) @@ -767,7 +767,8 @@ obsolete(int *argcp, char **argvp[]) if (flags) { *p = '\0'; *nargv++ = flagsp; - } + } else + free(flagsp); /* Copy remaining arguments. */ while ((*nargv++ = *argv++));