Currently if ${bootfile} is unset and sysboot is invoked with no
filename specified then U-Boot will crash will a null-pointer
dereference. Add the missing check and a matching error print.

Fixes: 993c912d304d ("cmd: sysboot: Create a sysboot command dedicated file")
Signed-off-by: Caleb Connolly <caleb.conno...@linaro.org>
---
 cmd/sysboot.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/cmd/sysboot.c b/cmd/sysboot.c
index 63a7806debe4..d14c570d96ab 100644
--- a/cmd/sysboot.c
+++ b/cmd/sysboot.c
@@ -76,8 +76,12 @@ static int do_sysboot(struct cmd_tbl *cmdtp, int flag, int 
argc,
        }
 
        if (argc < 6) {
                filename = env_get("bootfile");
+               if (!filename) {
+                       printf("Specify a filename or set the ${bootfile} 
environment variable\n");
+                       return 1;
+               }
        } else {
                filename = argv[5];
                env_set("bootfile", filename);
        }
-- 
2.44.0

Reply via email to