All of lore.kernel.org
 help / color / mirror / Atom feed
From: tip-bot for Thomas Jarosch <thomas.jarosch@intra2net.com>
To: linux-tip-commits@vger.kernel.org
Cc: acme@redhat.com, linux-kernel@vger.kernel.org, hpa@zytor.com,
	mingo@kernel.org, thomas.jarosch@intra2net.com,
	tglx@linutronix.de
Subject: [tip:perf/core] perf header: Fix double fclose() on do_write(fd, xxx) failure
Date: Thu, 31 Jan 2013 03:04:58 -0800	[thread overview]
Message-ID: <tip-5809fde040de2afa477a6c593ce2e8fd2c11d9d3@git.kernel.org> (raw)
In-Reply-To: <1751778.SZQB4fNdIh@storm>

Commit-ID:  5809fde040de2afa477a6c593ce2e8fd2c11d9d3
Gitweb:     http://git.kernel.org/tip/5809fde040de2afa477a6c593ce2e8fd2c11d9d3
Author:     Thomas Jarosch <thomas.jarosch@intra2net.com>
AuthorDate: Mon, 28 Jan 2013 10:21:14 +0100
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 30 Jan 2013 10:40:44 -0300

perf header: Fix double fclose() on do_write(fd, xxx) failure

cppcheck reported:
[util/header.c:983]: (error) Used file that is not opened.

Thanks to Arnaldo Carvalho de Melo for pointing out that
fclose(NULL) is undefined behavior -> protect against it.

Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com>
Link: http://lkml.kernel.org/r/1751778.SZQB4fNdIh@storm
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/header.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
index 7b24cf3..f6081cb 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -955,6 +955,7 @@ static int write_topo_node(int fd, int node)
 	}
 
 	fclose(fp);
+	fp = NULL;
 
 	ret = do_write(fd, &mem_total, sizeof(u64));
 	if (ret)
@@ -981,7 +982,8 @@ static int write_topo_node(int fd, int node)
 	ret = do_write_string(fd, buf);
 done:
 	free(buf);
-	fclose(fp);
+	if (fp)
+		fclose(fp);
 	return ret;
 }
 

      reply	other threads:[~2013-01-31 11:05 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-28  9:21 [perf PATCH v2] Fix double fclose() on do_write(fd, xxx) failure Thomas Jarosch
2013-01-31 11:04 ` tip-bot for Thomas Jarosch [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=tip-5809fde040de2afa477a6c593ce2e8fd2c11d9d3@git.kernel.org \
    --to=thomas.jarosch@intra2net.com \
    --cc=acme@redhat.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.