In boot_from_devices the variable loader is not NULL checked after
assignment and before first use but later code does check it for NULL.
Add a NULL check before first use.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodb...@linaro.org>
---
 common/spl/spl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/spl/spl.c b/common/spl/spl.c
index d8e26605d20..ed443c645a7 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -634,7 +634,7 @@ static int boot_from_devices(struct spl_image_info 
*spl_image,
                if (CONFIG_IS_ENABLED(SHOW_ERRORS))
                        ret = -ENXIO;
                for (loader = drv; loader != drv + n_ents; loader++) {
-                       if (bootdev != loader->boot_device)
+                       if (loader && bootdev != loader->boot_device)
                                continue;
                        if (!CONFIG_IS_ENABLED(SILENT_CONSOLE)) {
                                if (loader)

---
base-commit: 0f83825802d8938fb584c12f115bde900efe71c1
change-id: 20250718-spl_loader-e93a2d246b8e

Best regards,
-- 
Andrew Goodbody <andrew.goodb...@linaro.org>

Reply via email to