When --file is combined with command line arguments the later has silently been ignored. This commit makes user to be aware the logger will not use command line arguments when --file is specified. Reported-by: "Daniel 'DaB.' Baur" <debian@xxxxxxxxxxxxxxxxx> Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=467244 CC: Andreas Henriksson <andreas@xxxxxxxx> Signed-off-by: Sami Kerola <kerolasa@xxxxxx> --- misc-utils/logger.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/misc-utils/logger.c b/misc-utils/logger.c index afd9371..ac583fd 100644 --- a/misc-utils/logger.c +++ b/misc-utils/logger.c @@ -535,6 +535,7 @@ int main(int argc, char **argv) .rfc5424_host = 1, }; int ch; + int stdout_reopened = 0; #ifdef HAVE_LIBSYSTEMD FILE *jfd = NULL; #endif @@ -570,8 +571,8 @@ int main(int argc, char **argv) switch (ch) { case 'f': /* file to log */ if (freopen(optarg, "r", stdin) == NULL) - err(EXIT_FAILURE, _("file %s"), - optarg); + err(EXIT_FAILURE, _("file %s"), optarg); + stdout_reopened = 1; break; case 'i': /* log process id also */ ctl.logflags |= LOG_PID; @@ -642,6 +643,8 @@ int main(int argc, char **argv) } argc -= optind; argv += optind; + if (stdout_reopened && argc) + warnx(_("--file <file> and <message> are mutually exclusive, message is ignored")); #ifdef HAVE_LIBSYSTEMD if (jfd) { int ret = journald_entry(jfd); -- 2.0.3 -- To unsubscribe from this list: send the line "unsubscribe util-linux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html