Another, very similar. >From aff3ed70d47ae8e2da057d00dd3d4ab08b0cf574 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Fri, 27 May 2011 13:53:36 +0200 Subject: [PATCH] linux: don't leak a FILE* upon /proc read failure
* libparted/arch/linux.c (_probe_proc_partitions): Call fclose upon failure. --- libparted/arch/linux.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libparted/arch/linux.c b/libparted/arch/linux.c index 6ce6a3f..aeaf98f 100644 --- a/libparted/arch/linux.c +++ b/libparted/arch/linux.c @@ -2064,16 +2064,17 @@ _probe_proc_partitions () char buf [512]; char part_name [256]; char dev_name [256]; + int ok = 0; proc_part_file = fopen ("/proc/partitions", "r"); if (!proc_part_file) return 0; if (fgets (buf, 256, proc_part_file) == NULL) - return 0; + goto done; if (fgets (buf, 256, proc_part_file) == NULL) - return 0; + goto done; while (fgets (buf, 512, proc_part_file) && sscanf (buf, "%d %d %d %255s", &major, &minor, &size, @@ -2090,8 +2091,10 @@ _probe_proc_partitions () _ped_device_probe (dev_name); } + ok = 1; + done: fclose (proc_part_file); - return 1; + return ok; } struct _entry { -- 1.7.5.2.660.g9f46c _______________________________________________ bug-parted mailing list bug-parted@gnu.org https://lists.gnu.org/mailman/listinfo/bug-parted