From owner-svn-src-head@FreeBSD.ORG Tue Dec 14 20:35:08 2010 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 67E99106564A; Tue, 14 Dec 2010 20:35:08 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 534428FC1B; Tue, 14 Dec 2010 20:35:08 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id oBEKZ8vY029870; Tue, 14 Dec 2010 20:35:08 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id oBEKZ8L9029868; Tue, 14 Dec 2010 20:35:08 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201012142035.oBEKZ8L9029868@svn.freebsd.org> From: Xin LI Date: Tue, 14 Dec 2010 20:35:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r216447 - head/usr.bin/printf X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Dec 2010 20:35:08 -0000 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();