Messages in this thread | | | From | Thomas Jarosch <> | Subject | Re: [perf PATCH 3/3] Fix double fclose() on do_write(fd, xxx) failure | Date | Mon, 28 Jan 2013 09:31:58 +0100 |
| |
On Friday, 25. January 2013 13:01:51 you wrote: > Em Fri, Jan 25, 2013 at 11:22:17AM +0100, Thomas Jarosch escreveu: > > cppcheck reported: > > [util/header.c:983]: (error) Used file that is not opened. > > > > Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com> > > --- > > > > tools/perf/util/header.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c > > index 7b24cf3..30745c2 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; > > Ok, but what is the behaviour of fclose(NULL)? Is it defined? > > - Arnaldo
Grrr, this is undefined behavior. Sorry. I always thought this is defined like free(NULL) but apparently it is not.
I'll send another version of the patch and also write to the man page maintainer to add a small hint to the fclose() man page.
Thomas
| |