MIPS: AR7: use strlcat() for the command line arguments
authorYoichi Yuasa <yuasa@linux-mips.org>
Tue, 26 Jan 2010 09:07:02 +0000 (18:07 +0900)
committerRalf Baechle <ralf@linux-mips.org>
Sat, 27 Feb 2010 11:53:14 +0000 (12:53 +0100)
Signed-off-by: Yoichi Yuasa <yuasa@linux-mips.org>
Cc: linux-mips <linux-mips@linux-mips.org>
Patchwork: http://patchwork.linux-mips.org/patch/871/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/ar7/prom.c

index f1cfd90a31d7369cc352bc4c62e9e2130274da34..f5a6ed6deb3ff6abf7fd8543f50b5738e2b65ff8 100644 (file)
@@ -56,22 +56,12 @@ char * __init prom_getcmdline(void)
 
 static void  __init ar7_init_cmdline(int argc, char *argv[])
 {
-       char *cp;
-       int actr;
-
-       actr = 1; /* Always ignore argv[0] */
+       int i;
 
-       cp = &(arcs_cmdline[0]);
-       while (actr < argc) {
-               strcpy(cp, argv[actr]);
-               cp += strlen(argv[actr]);
-               *cp++ = ' ';
-               actr++;
-       }
-       if (cp != &(arcs_cmdline[0])) {
-               /* get rid of trailing space */
-               --cp;
-               *cp = '\0';
+       for (i = 1; i < argc; i++) {
+               strlcat(arcs_cmdline, argv[i], COMMAND_LINE_SIZE);
+               if (i < (argc - 1))
+                       strlcat(arcs_cmdline, " ", COMMAND_LINE_SIZE);
        }
 }
 
@@ -250,7 +240,7 @@ static void __init console_config(void)
        else
                sprintf(console_string, " console=ttyS0,%d%c%c", baud, parity,
                        bits);
-       strcat(prom_getcmdline(), console_string);
+       strlcat(arcs_cmdline, console_string, COMMAND_LINE_SIZE);
 #endif
 }