From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 9FBC5138334 for ; Thu, 2 Jan 2020 15:32:56 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D6345E0A9A; Thu, 2 Jan 2020 15:32:55 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id AEEC8E0A9A for ; Thu, 2 Jan 2020 15:32:55 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 6BE1F34DE61 for ; Thu, 2 Jan 2020 15:32:54 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 283A874 for ; Thu, 2 Jan 2020 15:32:53 +0000 (UTC) From: "Fabian Groffen" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Fabian Groffen" Message-ID: <1577979157.7f610741388d8543d3d7652de4625eaa7caa6dfd.grobian@gentoo> Subject: [gentoo-commits] proj/portage-utils:master commit in: / X-VCS-Repository: proj/portage-utils X-VCS-Files: qcheck.c X-VCS-Directories: / X-VCS-Committer: grobian X-VCS-Committer-Name: Fabian Groffen X-VCS-Revision: 7f610741388d8543d3d7652de4625eaa7caa6dfd X-VCS-Branch: master Date: Thu, 2 Jan 2020 15:32:53 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 0808f9c3-6a02-4dfa-bd3c-abb7f8a8b3d2 X-Archives-Hash: b0f09eb37d4b3bb5f47f426e234a9ca3 commit: 7f610741388d8543d3d7652de4625eaa7caa6dfd Author: Fabian Groffen gentoo org> AuthorDate: Thu Jan 2 15:32:37 2020 +0000 Commit: Fabian Groffen gentoo org> CommitDate: Thu Jan 2 15:32:37 2020 +0000 URL: https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=7f610741 qcheck: fix use after free Signed-off-by: Fabian Groffen gentoo.org> qcheck.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/qcheck.c b/qcheck.c index 1217a8a..59f35e2 100644 --- a/qcheck.c +++ b/qcheck.c @@ -305,7 +305,6 @@ qcheck_cb(tree_pkg_ctx *pkg_ctx, void *priv) } free(line); free(buffer); - fclose(fp_contents); if (!state->chk_config_protect) { freeargv(cp_argc, cp_argv); @@ -328,9 +327,12 @@ qcheck_cb(tree_pkg_ctx *pkg_ctx, void *priv) fclose(fp_contents_update); if (renameat(pkg_ctx->fd, "CONTENTS~", pkg_ctx->fd, "CONTENTS")) unlinkat(pkg_ctx->fd, "CONTENTS~", 0); - if (!verbose) + if (!verbose) { + fclose(fp_contents); return EXIT_SUCCESS; + } } + fclose(fp_contents); if (state->bad_only && num_files_ok != num_files) printf("%s\n", atom_format(state->fmt, atom)); qcprintf(" %2$s*%1$s %3$s%4$zu%1$s out of %3$s%5$zu%1$s file%6$s are good",