grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SECURITY PATCH 054/117] loader/xnu: Fix memory leak


From: Daniel Kiper
Subject: [SECURITY PATCH 054/117] loader/xnu: Fix memory leak
Date: Tue, 2 Mar 2021 19:01:01 +0100

From: Darren Kenny <darren.kenny@oracle.com>

The code here is finished with the memory stored in name, but it only
frees it if there curvalue is valid, while it could actually free it
regardless.

The fix is a simple relocation of the grub_free() to before the test
of curvalue.

Fixes: CID 96646

Signed-off-by: Darren Kenny <darren.kenny@oracle.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
---
 grub-core/loader/xnu.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/grub-core/loader/xnu.c b/grub-core/loader/xnu.c
index 44fd5a979..eb1446251 100644
--- a/grub-core/loader/xnu.c
+++ b/grub-core/loader/xnu.c
@@ -1391,9 +1391,9 @@ grub_xnu_fill_devicetree (void)
     name[len] = 0;
 
     curvalue = grub_xnu_create_value (curkey, name);
-    if (!curvalue)
-      return grub_errno;
     grub_free (name);
+    if (!curvalue)
+      return grub_errno;
    
     data = grub_malloc (grub_strlen (var->value) + 1);
     if (!data)
-- 
2.11.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]