summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeng Fan <[email protected]>2026-07-03 17:11:24 +0800
committerTom Rini <[email protected]>2026-07-16 12:03:05 -0600
commite871bb2463fbd6c06b6d771d9201c6d6f4abf947 (patch)
treed873650de0d65bb655c09081004c87092a43ad5e
parente800cc67f5b6cb50a20f37c993ec1cd4063bdbd3 (diff)
dm: core: free fdt when fdt_create_empty_tree failure
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 <[email protected]> Reviewed-by: RaphaĆ«l Gallais-Pou <[email protected]> Reviewed-by: Simon Glass <[email protected]>
-rw-r--r--drivers/core/ofnode.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c
index 1388b481031..b5d13c43db1 100644
--- a/drivers/core/ofnode.c
+++ b/drivers/core/ofnode.c
@@ -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;
}