svn commit: r216447 - head/usr.bin/printf
Xin LI
delphij at FreeBSD.org
Tue Dec 14 20:35:08 UTC 2010
Author: delphij
Date: Tue Dec 14 20:35:08 2010
New Revision: 216447
URL: http://svn.freebsd.org/changeset/base/216447
Log:
Revert r216423 per request from Jilles.
The new behavior prevents us from being able to bail out explicitly
on unknown options that we have not implemented. BASH for instance
have introduced a '-v' for printf(1) builtin and it seems to be bad
to pretend that we supported it and have a script break silently.
Modified:
head/usr.bin/printf/printf.c
Modified: head/usr.bin/printf/printf.c
==============================================================================
--- head/usr.bin/printf/printf.c Tue Dec 14 20:19:41 2010 (r216446)
+++ head/usr.bin/printf/printf.c Tue Dec 14 20:35:08 2010 (r216447)
@@ -101,7 +101,7 @@ int
main(int argc, char *argv[])
{
size_t len;
- int chopped, end, rval;
+ int ch, chopped, end, rval;
char *format, *fmt, *start;
#ifndef SHELL
@@ -110,15 +110,15 @@ main(int argc, char *argv[])
#ifdef SHELL
optreset = 1; optind = 1; opterr = 0; /* initialize getopt */
#endif
- /* Skip argv[0] which is the process name */
- argv++;
- argc--;
-
- /* Need to accept/ignore "--" option. */
- if (argc >= 1 && strcmp(*argv, "--") == 0) {
- argc--;
- argv++;
- }
+ while ((ch = getopt(argc, argv, "")) != -1)
+ switch (ch) {
+ case '?':
+ default:
+ usage();
+ return (1);
+ }
+ argc -= optind;
+ argv += optind;
if (argc < 1) {
usage();
More information about the svn-src-all
mailing list