diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-12-04 14:00:01 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-12-04 14:00:01 +0200 |
commit | 2613d48d056396600993c447ab9fe6b64896abe6 (patch) | |
tree | 1093bb45349855d45941594264f4e700383ea67b /libmailutils/base | |
parent | 76df98da17f576b71e6cbc83bbf527b685be1178 (diff) | |
download | mailutils-2613d48d056396600993c447ab9fe6b64896abe6.tar.gz mailutils-2613d48d056396600993c447ab9fe6b64896abe6.tar.bz2 |
mu: use stdstream functions.
* include/mailutils/stdstream.h (mu_printf): New prototype.
* include/mailutils/version.h: Include mailutils/types.h instead of
stdio.h
(mu_fprint_options, mu_fprint_conf_option): Remove protos.
(mu_format_options, mu_format_conf_option): New protos.
* libmailutils/base/version.c (mu_fprint_options): Replace
with mu_format_options, which outputs formatted data to a mu_stream_t.
(mu_fprint_conf_option): Ditto. Replaced by mu_format_conf_option.
(mu_print_options): Update accordingly.
* libmailutils/stdstream/basestr.c (mu_printf): New function.
* mu/acl.c: Replace stdio calls with stdstream ones.
* mu/cflags.c: Likewise.
* mu/filter.c: Likewise.
* mu/flt2047.c: Likewise.
* mu/imap.c: Likewise.
* mu/info.c: Likewise.
* mu/ldflags.c: Likewise.
* mu/logger.c: Likewise.
* mu/mu.c: Likewise.
* mu/mu.h: Likewise.
* mu/pop.c: Likewise.
* mu/query.c: Likewise.
* mu/shell.c: Likewise.
* mu/verbose.c: Likewise.
* mu/wicket.c: Likewise.
Diffstat (limited to 'libmailutils/base')
-rw-r--r-- | libmailutils/base/version.c | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/libmailutils/base/version.c b/libmailutils/base/version.c index 2cf11ac7c..237377293 100644 --- a/libmailutils/base/version.c +++ b/libmailutils/base/version.c @@ -22,7 +22,11 @@ #include <mailutils/nls.h> #include <mailutils/version.h> #include <mailutils/cstr.h> +#include <mailutils/stream.h> +#include <mailutils/stdstream.h> +#include <mailutils/errno.h> #include <stdio.h> +#include <stdlib.h> #include <string.h> #include <confpaths.h> @@ -121,27 +125,41 @@ static struct mu_conf_option mu_conf_option[] = { }; void -mu_fprint_conf_option (FILE *fp, const struct mu_conf_option *opt, int verbose) +mu_format_conf_option (mu_stream_t stream, const struct mu_conf_option *opt, + int verbose) { - fprintf (fp, "%s", opt->name); + mu_stream_printf (stream, "%s", opt->name); if (verbose && opt->descr) - fprintf (fp, " \t- %s", _(opt->descr)); - fputc('\n', fp); + mu_stream_printf (stream, " \t- %s", _(opt->descr)); + mu_stream_printf (stream, "\n"); } void -mu_fprint_options (FILE *fp, int verbose) +mu_format_options (mu_stream_t stream, int verbose) { int i; for (i = 0; mu_conf_option[i].name; i++) - mu_fprint_conf_option (fp, mu_conf_option + i, verbose); + mu_format_conf_option (stream, mu_conf_option + i, verbose); } void mu_print_options () { - mu_fprint_options (stdout, 1); + if (mu_strout) + mu_stream_ref (mu_strout); + else + { + int rc = mu_stdio_stream_create (&mu_strout, MU_STDOUT_FD, 0); + if (rc) + { + fprintf (stderr, "mu_stdio_stream_create(%d): %s\n", + MU_STDOUT_FD, mu_strerror (rc)); + abort (); + } + } + mu_format_options (mu_strout, 1); + mu_stream_unref (mu_strout); } const struct mu_conf_option * |