diff options
author | Milan Cejnar <milancejnar@gmail.com> | 2013-02-18 10:09:12 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-02-21 10:52:12 +0100 |
commit | 12ee35f8275f94e080b6a990e7a4f87882282453 (patch) | |
tree | d1f6525707321205c8abceb8a8867b896a05a56d | |
parent | ad65d4ef017e87c1be4b1054e1276f5256a77bfc (diff) | |
download | sssd-12ee35f8275f94e080b6a990e7a4f87882282453.tar.gz sssd-12ee35f8275f94e080b6a990e7a4f87882282453.tar.xz sssd-12ee35f8275f94e080b6a990e7a4f87882282453.zip |
tools: append new line to string from poptStrerror()
https://fedorahosted.org/sssd/ticket/1756
Messages from poptStrerror() passed to BAD_POPT_PARAMS macro were
printed out to the console without new line character at the end of the
message. BAD_POPT_PARAMS should now behave correctly with strings both
with or without new line character at the end.
-rw-r--r-- | src/tools/tools_util.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/tools/tools_util.c b/src/tools/tools_util.c index 731b2d04f..85164c612 100644 --- a/src/tools/tools_util.c +++ b/src/tools/tools_util.c @@ -70,8 +70,20 @@ static int setup_db(struct tools_ctx *ctx) */ void usage(poptContext pc, const char *error) { + size_t lentmp; + char nl[2] = ""; + poptPrintUsage(pc, stderr, 0); - if (error) fprintf(stderr, "%s", error); + + if (error) { + lentmp = strlen(error); + if ((lentmp > 0) && (error[lentmp - 1] != '\n')) { + nl[0]='\n'; + nl[1]='\0'; + } + + fprintf(stderr, "%s%s", error, nl); + } } int parse_groups(TALLOC_CTX *mem_ctx, const char *optstr, char ***_out) |