]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
lscpu: fix fd leak
authorKarel Zak <kzak@redhat.com>
Thu, 2 Feb 2012 11:32:45 +0000 (12:32 +0100)
committerKarel Zak <kzak@redhat.com>
Thu, 2 Feb 2012 11:32:45 +0000 (12:32 +0100)
Signed-off-by: Karel Zak <kzak@redhat.com>
sys-utils/lscpu.c

index 6a74c4eb787bea65bbf9e5138726d84849c154ae..65e1eb6f110906d07dbee010356a7c3233f22eac 100644 (file)
@@ -1138,12 +1138,14 @@ print_summary(struct lscpu_desc *desc, struct lscpu_modifier *mod)
                        char buf[BUFSIZ];
                        int t0, t1, t2;
 
-                       while (fgets(buf, sizeof(buf), fd) != NULL) {
+                       while (fd && fgets(buf, sizeof(buf), fd) != NULL) {
                                if (sscanf(buf, "CPU Topology SW:%d%d%d%d%d%d",
                                           &t0, &t1, &t2, &books, &sockets_per_book,
                                           &cores_per_socket) == 6)
                                        break;
                        }
+                       if (fd)
+                               fclose(fd);
                }
                print_n(_("Thread(s) per core:"), desc->nthreads / desc->ncores);
                print_n(_("Core(s) per socket:"),