From: Nathaniel Chen Date: Thu, 7 Mar 2013 19:09:16 +0000 (-0800) Subject: bootchart: use _cleanup_close_ X-Git-Tag: v198~18 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=0ea9530d401827e299c6e04a433e69a7a2a89d80;ds=inline bootchart: use _cleanup_close_ use _cleanup_{close_,fclose_} to close streams and file descriptors --- diff --git a/src/bootchart/bootchart.c b/src/bootchart/bootchart.c index 65f16c517..0ad14dc37 100644 --- a/src/bootchart/bootchart.c +++ b/src/bootchart/bootchart.c @@ -66,10 +66,10 @@ struct cpu_stat_struct cpustat[MAXCPUS]; int pscount; int cpus; double interval; -FILE *of = NULL; +FILE _cleanup_fclose_ *of = NULL; int overrun = 0; static int exiting = 0; -int sysfd=-1; +int _cleanup_close_ sysfd=-1; /* graph defaults */ bool entropy = false; @@ -106,7 +106,7 @@ int main(int argc, char *argv[]) char datestr[200]; time_t t = 0; const char *fn; - _cleanup_fclose_ FILE *f; + _cleanup_fclose_ FILE *f = NULL; int gind; int i, r; char *init = NULL, *output = NULL; @@ -378,10 +378,8 @@ int main(int argc, char *argv[]) svg_do(build); fprintf(stderr, "systemd-bootchart wrote %s\n", output_file); - fclose(of); closedir(proc); - close(sysfd); /* nitpic cleanups */ ps = ps_first; diff --git a/src/bootchart/svg.c b/src/bootchart/svg.c index 9fee81079..79476716a 100644 --- a/src/bootchart/svg.c +++ b/src/bootchart/svg.c @@ -150,7 +150,7 @@ static void svg_title(const char *build) char date[256] = "Unknown"; char cpu[256] = "Unknown"; char *c; - FILE *f; + FILE _cleanup_fclose_ *f = NULL; time_t t; int fd; struct utsname uts; @@ -161,7 +161,6 @@ static void svg_title(const char *build) if (f) { if (!fgets(cmdline, 255, f)) sprintf(cmdline, "Unknown"); - fclose(f); } /* extract root fs so we can find disk model name in sysfs */ @@ -176,7 +175,6 @@ static void svg_title(const char *build) if (f) { if (!fgets(model, 255, f)) fprintf(stderr, "Error reading disk model for %s\n", rootbdev); - fclose(f); } } @@ -198,7 +196,6 @@ static void svg_title(const char *build) break; } } - fclose(f); } svg("Bootchart for %s - %s\n",