0014-multiboot2-Fix-memory-leak-if-grub_create_loader_cmd.patch 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. From 49bf3faa106498e151306fc780c63194a14751e3 Mon Sep 17 00:00:00 2001
  2. From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
  3. Date: Fri, 26 Jun 2020 10:51:43 -0400
  4. Subject: [PATCH] multiboot2: Fix memory leak if
  5. grub_create_loader_cmdline() fails
  6. MIME-Version: 1.0
  7. Content-Type: text/plain; charset=UTF-8
  8. Content-Transfer-Encoding: 8bit
  9. Fixes: CID 292468
  10. Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
  11. Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
  12. Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
  13. ---
  14. grub-core/loader/multiboot_mbi2.c | 6 +++++-
  15. 1 file changed, 5 insertions(+), 1 deletion(-)
  16. diff --git a/grub-core/loader/multiboot_mbi2.c b/grub-core/loader/multiboot_mbi2.c
  17. index 53da78615..0efc66062 100644
  18. --- a/grub-core/loader/multiboot_mbi2.c
  19. +++ b/grub-core/loader/multiboot_mbi2.c
  20. @@ -1070,7 +1070,11 @@ grub_multiboot2_add_module (grub_addr_t start, grub_size_t size,
  21. err = grub_create_loader_cmdline (argc, argv, newmod->cmdline,
  22. newmod->cmdline_size, GRUB_VERIFY_MODULE_CMDLINE);
  23. if (err)
  24. - return err;
  25. + {
  26. + grub_free (newmod->cmdline);
  27. + grub_free (newmod);
  28. + return err;
  29. + }
  30. if (modules_last)
  31. modules_last->next = newmod;
  32. --
  33. 2.26.2