We should check argv[3] only if there are enough args. Otherwise,
it might cause invalid memory access fault.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
        if (boot_get_fdt(flag, argc, argv, images, &of_flat_tree, &of_size))
                return 1;
 #endif
-       if (!of_flat_tree)
+       if (!of_flat_tree && argc > 3)
                of_flat_tree = (char *)simple_strtoul(argv[3], NULL, 16);
        if (of_flat_tree)
                initrd_end = (ulong)of_flat_tree;