diff options
author | Andrey Smirnov <andrew.smirnov@gmail.com> | 2016-09-01 13:39:58 -0700 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2016-09-05 08:29:12 +0200 |
commit | da1f91422c2e3479066e22cc2795b7927dfe6714 (patch) | |
tree | 1561ef1d8d2f6d4544e543605e057f720d38e695 /common | |
parent | 79a2cc9fe6b1db9255c3947f2067adc8eb3ce048 (diff) | |
download | barebox-da1f91422c2e3479066e22cc2795b7927dfe6714.tar.gz barebox-da1f91422c2e3479066e22cc2795b7927dfe6714.tar.xz |
of_unflatten_dtb(): Check return value with IS_ERR
Of_unflatten_dtb returns a ERR_PTR value so checking it against NULL is
incorrect. Fix it in all of the places where this was happening.
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'common')
-rw-r--r-- | common/bootm.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/common/bootm.c b/common/bootm.c index 78d04d5806..59843195cd 100644 --- a/common/bootm.c +++ b/common/bootm.c @@ -336,6 +336,9 @@ int bootm_load_devicetree(struct image_data *data, unsigned long load_address) if (data->os_fit && data->os_fit->oftree) { data->of_root_node = of_unflatten_dtb(data->os_fit->oftree); + + if (IS_ERR(data->of_root_node)) + data->of_root_node = NULL; } else if (data->oftree_file) { size_t size; @@ -367,7 +370,8 @@ int bootm_load_devicetree(struct image_data *data, unsigned long load_address) free(oftree); - if (!data->of_root_node) { + if (IS_ERR(data->of_root_node)) { + data->of_root_node = NULL; pr_err("unable to unflatten devicetree\n"); return -EINVAL; } |