All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] git-send-email: abort/usage on bad option
@ 2007-02-28  4:47 Michael Coleman
  0 siblings, 0 replies; only message in thread
From: Michael Coleman @ 2007-02-28  4:47 UTC (permalink / raw)
  To: git; +Cc: Michael Coleman

Instead of proceeding, abort and give usage message when a bad option
is seen.
---
 git-send-email.perl |   97 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 53 insertions(+), 44 deletions(-)

diff --git a/git-send-email.perl b/git-send-email.perl
index 6a285bf..a71a192 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -34,6 +34,53 @@ sub readline {
 }
 package main;
 
+
+sub usage {
+	print <<EOT;
+git-send-email [options] <file | directory>...
+Options:
+   --from         Specify the "From:" line of the email to be sent.
+
+   --to           Specify the primary "To:" line of the email.
+
+   --cc           Specify an initial "Cc:" list for the entire series
+                  of emails.
+
+   --bcc          Specify a list of email addresses that should be Bcc:
+		  on all the emails.
+
+   --compose      Use \$EDITOR to edit an introductory message for the
+                  patch series.
+
+   --subject      Specify the initial "Subject:" line.
+                  Only necessary if --compose is also set.  If --compose
+		  is not set, this will be prompted for.
+
+   --in-reply-to  Specify the first "In-Reply-To:" header line.
+                  Only used if --compose is also set.  If --compose is not
+		  set, this will be prompted for.
+
+   --chain-reply-to If set, the replies will all be to the previous
+                  email sent, rather than to the first email sent.
+                  Defaults to on.
+
+   --no-signed-off-cc Suppress the automatic addition of email addresses
+                 that appear in a Signed-off-by: line, to the cc: list.
+		 Note: Using this option is not recommended.
+
+   --smtp-server  If set, specifies the outgoing SMTP server to use.
+                  Defaults to localhost.
+
+   --suppress-from Suppress sending emails to yourself if your address
+                  appears in a From: line.
+
+   --quiet	  Make git-send-email less verbose.  One line per email
+                  should be all that is output.
+
+EOT
+	exit(1);
+}
+
 # most mail servers generate the Date: header, but not all...
 sub format_2822_time {
 	my ($time) = @_;
@@ -120,6 +167,10 @@ my $rc = GetOptions("from=s" => \$from,
 		    "dry-run" => \$dry_run,
 	 );
 
+unless ($rc) {
+    usage();
+}
+
 # Verify the user input
 
 foreach my $entry (@to) {
@@ -311,50 +362,8 @@ if (@files) {
 		print $_,"\n" for (@files);
 	}
 } else {
-	print <<EOT;
-git-send-email [options] <file | directory> [... file | directory ]
-Options:
-   --from         Specify the "From:" line of the email to be sent.
-
-   --to           Specify the primary "To:" line of the email.
-
-   --cc           Specify an initial "Cc:" list for the entire series
-                  of emails.
-
-   --bcc          Specify a list of email addresses that should be Bcc:
-		  on all the emails.
-
-   --compose      Use \$EDITOR to edit an introductory message for the
-                  patch series.
-
-   --subject      Specify the initial "Subject:" line.
-                  Only necessary if --compose is also set.  If --compose
-		  is not set, this will be prompted for.
-
-   --in-reply-to  Specify the first "In-Reply-To:" header line.
-                  Only used if --compose is also set.  If --compose is not
-		  set, this will be prompted for.
-
-   --chain-reply-to If set, the replies will all be to the previous
-                  email sent, rather than to the first email sent.
-                  Defaults to on.
-
-   --no-signed-off-cc Suppress the automatic addition of email addresses
-                 that appear in a Signed-off-by: line, to the cc: list.
-		 Note: Using this option is not recommended.
-
-   --smtp-server  If set, specifies the outgoing SMTP server to use.
-                  Defaults to localhost.
-
-  --suppress-from Suppress sending emails to yourself if your address
-                  appears in a From: line.
-
-   --quiet	Make git-send-email less verbose.  One line per email should be
-		all that is output.
-
-Error: Please specify a file or a directory on the command line.
-EOT
-	exit(1);
+	print STDERR "\nNo patch files specified!\n\n";
+	usage();
 }
 
 # Variables we set as part of the loop over files
-- 
1.5.0.rc3

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2007-02-28  4:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-28  4:47 [PATCH] git-send-email: abort/usage on bad option Michael Coleman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.