--- time.c.orig	Thu Jun 13 15:38:21 1996
+++ time.c	Mon Feb  7 22:32:42 2000
@@ -147,6 +147,10 @@
   NULL
 };
 
+
+/* If true, do not show the exit message */
+static boolean quiet;
+
 /* If true, show an English description next to each statistic.  */
 static boolean verbose;
 
@@ -172,6 +176,7 @@
   {"help", no_argument, NULL, 'h'},
   {"output-file", required_argument, NULL, 'o'},
   {"portability", no_argument, NULL, 'p'},
+  {"quiet", no_argument,NULL, 'q'},
   {"verbose", no_argument, NULL, 'v'},
   {"version", no_argument, NULL, 'V'},
   {NULL, no_argument, NULL, 0}
@@ -333,7 +338,8 @@
   else if (WIFSIGNALED (resp->waitstatus))
     fprintf (fp, "Command terminated by signal %d\n",
 	     WTERMSIG (resp->waitstatus));
-  else if (WIFEXITED (resp->waitstatus) && WEXITSTATUS (resp->waitstatus))
+  else if (WIFEXITED (resp->waitstatus) && WEXITSTATUS (resp->waitstatus)
+	   && !quiet)
     fprintf (fp, "Command exited with non-zero status %d\n",
 	     WEXITSTATUS (resp->waitstatus));
 
@@ -523,6 +529,7 @@
   char *format;			/* Format found in environment.  */
 
   /* Initialize the option flags.  */
+  quiet = false;
   verbose = false;
   outfile = NULL;
   outfp = stderr;
@@ -536,7 +543,7 @@
   if (format)
     output_format = format;
 
-  while ((optc = getopt_long (argc, argv, "+af:o:pvV", longopts, (int *) 0))
+  while ((optc = getopt_long (argc, argv, "+af:o:pqvV", longopts, (int *) 0))
 	 != EOF)
     {
       switch (optc)
@@ -555,6 +562,9 @@
 	case 'p':
 	  output_format = posix_format;
 	  break;
+	case 'q':
+	  quiet = true;
+	  break;
 	case 'v':
 	  verbose = true;
 	  break;
@@ -657,7 +667,7 @@
   fprintf (stream, "\
 Usage: %s [-apvV] [-f format] [-o file] [--append] [--verbose]\n\
        [--portability] [--format=format] [--output=file] [--version]\n\
-       [--help] command [arg...]\n",
+       [--quiet] [--help] command [arg...]\n",
 	   program_name);
   exit (status);
 }
