X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=logger.c;h=669a2d6010091551641ce11afa0b311524c0908e;hb=46f44d24fcc25a5d6e13e0453485881bdf147e91;hp=1ed6dc639289076bc0dadd3691a53fd515a65089;hpb=f57c944e09417edcbcd69f2b01b937cadef39db2;p=oweals%2Fbusybox.git diff --git a/logger.c b/logger.c index 1ed6dc639..669a2d601 100644 --- a/logger.c +++ b/logger.c @@ -35,7 +35,7 @@ #else /* We have to do this since the header file defines static - * structues. Argh.... bad libc, bad, bad... + * structures. Argh.... bad libc, bad, bad... */ #include typedef struct _code { @@ -149,10 +149,19 @@ extern int logger_main(int argc, char **argv) } message = buf; } else { - if (argc >= 1) - message = *argv; - else + if (argc >= 1) { + int len = 1; /* for the '\0' */ + for (; *argv != NULL; argv++) { + len += strlen(*argv); + len += 1; /* for the space between the args */ + message = xrealloc(message, len); + strcat(message, *argv); + strcat(message, " "); + } + message[strlen(message)-1] = '\0'; + } else { error_msg_and_die("No message\n"); + } } openlog(name, option, (pri | LOG_FACMASK));