[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Patch for issue 402

From: B. W. Fitzpatrick <fitz_at_red-bean.com>
Date: 2001-07-25 06:55:13 CEST

Looks great. Applied and tested. I added a little more info to the log
message, but all done. Great job on your first submission.

Thanks Chris!

-Fitz

PS Karl, after you verify, can you close the issue? I didn't want to
close until you got a minute to review.

> --------------E02E153B32545035AB5EB7CD
> Content-Type: text/plain; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> Attached is the patch and a log entry. Please let me know if I did anything
> wrong. =)
>
> --Chris
> --------------E02E153B32545035AB5EB7CD
> Content-Type: text/plain; charset=us-ascii;
> name="patch.txt"
> Content-Transfer-Encoding: 7bit
> Content-Disposition: inline;
> filename="patch.txt"
>
> Index: subversion/clients/cmdline//help-cmd.c
> ===================================================================
> RCS file: /usr/local/tigris/data/helm/cvs/repository/subversion/subversion/clients/cmdline/help-cmd.c,v
> retrieving revision 1.3
> diff -u -r1.3 help-cmd.c
> --- subversion/clients/cmdline//help-cmd.c 2001/07/07 11:15:42 1.3
> +++ subversion/clients/cmdline//help-cmd.c 2001/07/24 23:00:23
> @@ -33,7 +33,8 @@
> static void
> print_command_info (const svn_cl__cmd_desc_t *cmd_desc,
> svn_boolean_t help,
> - apr_pool_t *pool)
> + apr_pool_t *pool,
> + FILE *stream)
> {
> const svn_cl__cmd_desc_t *this_cmd
> = svn_cl__get_canonical_command (cmd_desc->name);
> @@ -41,33 +42,33 @@
> svn_boolean_t first_time;
>
> /* Print the canonical command name. */
> - fputs (canonical_cmd->name, stdout);
> + fputs (canonical_cmd->name, stream);
>
> /* Print the list of aliases. */
> first_time = TRUE;
> for (this_cmd++; (this_cmd->name && this_cmd->is_alias); this_cmd++)
> {
> if (first_time) {
> - printf (" (");
> + fprintf (stream, " (");
> first_time = FALSE;
> }
> else
> - printf (", ");
> + fprintf (stream, ", ");
>
> - printf ("%s", this_cmd->name);
> + fprintf (stream, "%s", this_cmd->name);
> }
>
> if (! first_time)
> - printf (")");
> + fprintf (stream, ")");
>
> if (help)
> - printf (": %s\n", canonical_cmd->help);
> + fprintf (stream, ": %s\n", canonical_cmd->help);
> }
>
>
> /* Print a generic (non-command-specific) usage message. */
> static void
> -print_generic_help (apr_pool_t *pool)
> +print_generic_help (apr_pool_t *pool, FILE *stream)
> {
> static const char usage[] =
> "usage: svn <subcommand> [options] [args]\n"
> @@ -86,21 +87,21 @@
>
> int i = 0;
>
> - printf ("%s", usage);
> + fprintf (stream, "%s", usage);
> while (svn_cl__cmd_table[i].name)
> {
> /* for (i = 0; i < max; i++) */
> if (! svn_cl__cmd_table[i].is_alias)
> {
> - printf (" ");
> - print_command_info (svn_cl__cmd_table + i, FALSE, pool);
> - printf ("\n");
> + fprintf (stream, " ");
> + print_command_info (svn_cl__cmd_table + i, FALSE, pool, stream);
> + fprintf (stream, "\n");
> }
> i++;
> }
>
> - printf ("\n");
> - printf ("%s\n", info);
> + fprintf (stream, "\n");
> + fprintf (stream, "%s\n", info);
>
> }
>
> @@ -159,14 +160,27 @@
> svn_stringbuf_t *this = (((svn_stringbuf_t **) (targets)->elts))[i];
> svn_cl__subcommand_help (this->data, pool);
> }
> +
> + /* the help command was given with no subcommands */
> + else if (os && !targets->nelts)
> + {
> + /* the -h or --help option was given */
> + if (opt_state && opt_state->help)
> + print_generic_help (pool, stdout);
> +
> + /* help was given by itself */
> + else
> + svn_cl__subcommand_help ("help", pool);
> + }
> +
> else
> {
> /* the -v or --version option was given */
> if (opt_state && opt_state->version)
> SVN_ERR (print_version_info (pool));
>
> + /* an unknown option was given */
> else
> - print_generic_help (pool);
> + print_generic_help (pool, stderr);
> }
>
> return SVN_NO_ERROR;
> @@ -184,7 +198,7 @@
> svn_cl__get_canonical_command (subcommand);
>
> if (cmd)
> - print_command_info (cmd, TRUE, pool);
> + print_command_info (cmd, TRUE, pool, stdout);
> else
> fprintf (stderr, "\"%s\": unknown command.\n\n", subcommand);
> }
>
> --------------E02E153B32545035AB5EB7CD
> Content-Type: text/plain; charset=us-ascii;
> name="log.txt"
> Content-Transfer-Encoding: 7bit
> Content-Disposition: inline;
> filename="log.txt"
>
> * clients/cmdline/help-cmd.c (print_command_info, print_generic_help):
> Added FILE *stream to parameter lists to allow callers to select the
> output stream to use. Switched all printf's to fprintf's to take
> advantage of the new parameter.
> * clients/cmdline/help-cmd.c (svn_cl__help): Added a case to handle when
> svn is invoked with help or --help. Updated calls to print_generic_help
> and print_command_info to use new parameter list.
> * clients/cmdline/help-cmd.c (svn_cl__subcommand_help): Updated call
> to print_command_info to use new parameter list.
>
>
> --------------E02E153B32545035AB5EB7CD
> Content-Type: text/plain; charset=us-ascii
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
> --------------E02E153B32545035AB5EB7CD--
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:33 2006

This is an archived mail posted to the Subversion Dev mailing list.