]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
dm: core: free fdt when fdt_create_empty_tree failure
authorPeng Fan <peng.fan@nxp.com>
Fri, 3 Jul 2026 09:11:24 +0000 (17:11 +0800)
committerTom Rini <trini@konsulko.com>
Thu, 16 Jul 2026 18:03:05 +0000 (12:03 -0600)
If fdt_create_empty_tree fails, the malloc-ed fdt buffer is never freed.
Add free before the error return.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Raphaƫl Gallais-Pou <raphael.gallais-pou@foss.st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
drivers/core/ofnode.c

index 1388b4810317ff6f33843c351df6b4ccbf31acbc..b5d13c43db13f0f4b5bbd4eaf56768b203d5655f 100644 (file)
@@ -130,8 +130,10 @@ int oftree_new(oftree *treep)
                if (!fdt)
                        return log_msg_ret("fla", -ENOMEM);
                ret = fdt_create_empty_tree(fdt, size);
-               if (ret)
+               if (ret) {
+                       free(fdt);
                        return log_msg_ret("fla", -EINVAL);
+               }
                oftree_list[oftree_count++] = fdt;
                tree.fdt = fdt;
        }