X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=help.c;h=311a43202c5043142ebfb00a0f12fa235aac8592;hb=546cea6f364cb5d51e589186503764595543123a;hp=99097db84ec4a02c9f74edd821f41899909520b3;hpb=628307f5c4de32b282bef30eda7fc034d198c6d4;p=platform%2Fupstream%2Fbtrfs-progs.git diff --git a/help.c b/help.c index 99097db..311a432 100644 --- a/help.c +++ b/help.c @@ -128,12 +128,32 @@ static int do_usage_one_command(const char * const *usagestr, unsigned int flags, FILE *outf) { int pad = 4; + const char *prefix = "usage: "; + const char *pad_listing = " "; if (!usagestr || !*usagestr) return -1; - fprintf(outf, "%s%s", (flags & USAGE_LISTING) ? " " : "usage: ", - *usagestr++); + if (flags & USAGE_LISTING) + prefix = pad_listing; + + fputs(prefix, outf); + if (strchr(*usagestr, '\n') == NULL) { + fputs(*usagestr, outf); + } else { + const char *c = *usagestr; + const char *nprefix = " "; + + if (flags & USAGE_LISTING) + nprefix = pad_listing; + + for (c = *usagestr; *c; c++) { + fputc(*c, outf); + if (*c == '\n') + fputs(nprefix, outf); + } + } + usagestr++; /* a short one-line description (mandatory) */ if ((flags & USAGE_SHORT) == 0)