autoscr: Fix one-character lines and non-newline terminated scripts
authorPetri Lehtinen <petri.lehtinen@inoi.fi>
Wed, 10 Sep 2008 06:43:49 +0000 (09:43 +0300)
committerWolfgang Denk <wd@denx.de>
Wed, 10 Sep 2008 09:09:39 +0000 (11:09 +0200)
When not using hush, the autoscr command now executes lines that are
only one character long. It also runs the last line of scripts even if
it does not end in a newline.

Signed-off-by: Petri Lehtinen <petri.lehtinen@inoi.fi>
common/cmd_autoscript.c

index c2e7e66..0439da2 100644 (file)
@@ -180,7 +180,7 @@ autoscript (ulong addr, const char *fit_uname)
                        if (*next == '\n') {
                                *next = '\0';
                                /* run only non-empty commands */
-                               if ((next - line) > 1) {
+                               if (*line) {
                                        debug ("** exec: \"%s\"\n",
                                                line);
                                        if (run_command (line, 0) < 0) {
@@ -192,6 +192,8 @@ autoscript (ulong addr, const char *fit_uname)
                        }
                        ++next;
                }
+               if (rcode == 0 && *line)
+                       rcode = (run_command(line, 0) >= 0);
        }
 #endif
        free (cmd);