]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
commands/parttool: fix memory leak.
authorAndrei Borzenkov <arvidjaar@gmail.com>
Tue, 27 Jan 2015 17:55:25 +0000 (20:55 +0300)
committerAndrei Borzenkov <arvidjaar@gmail.com>
Tue, 27 Jan 2015 17:55:25 +0000 (20:55 +0300)
Found by: Coverity scan.

grub-core/commands/parttool.c

index d907694dd1364642a9659f5c88b40bddf830763d..42c590e1a897c2af772c862a1aedf5d658f2181e 100644 (file)
@@ -282,8 +282,11 @@ grub_cmd_parttool (grub_command_t cmd __attribute__ ((unused)),
                break;
            }
        if (! cur)
-         return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("unknown argument `%s'"),
+         {
+           grub_device_close (dev);
+           return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("unknown argument `%s'"),
                             args[i]);
+         }
        ptool = cur;
        pargs = (struct grub_parttool_args *)
          grub_zalloc (ptool->nargs * sizeof (struct grub_parttool_args));