From owner-freebsd-bugs Thu Jul 18 19:20:11 2002 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6282337B400 for ; Thu, 18 Jul 2002 19:20:03 -0700 (PDT) Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id B11E043E72 for ; Thu, 18 Jul 2002 19:20:02 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.4/8.12.4) with ESMTP id g6J2K2JU021611 for ; Thu, 18 Jul 2002 19:20:02 -0700 (PDT) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.4/8.12.4/Submit) id g6J2K2jB021610; Thu, 18 Jul 2002 19:20:02 -0700 (PDT) Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B1D3F37B400 for ; Thu, 18 Jul 2002 19:10:41 -0700 (PDT) Received: from rewt.vangyzen.net (siren.adsl.duke.edu [152.16.64.215]) by mx1.FreeBSD.org (Postfix) with ESMTP id F001243E3B for ; Thu, 18 Jul 2002 19:10:36 -0700 (PDT) (envelope-from vangyzen@trillian.vangyzen.net) Received: from trillian.vangyzen.net (trillian.vangyzen.net [192.168.1.3]) by rewt.vangyzen.net (8.12.3/8.12.3) with ESMTP id g6J2Aam6006657 for ; Thu, 18 Jul 2002 22:10:36 -0400 (EDT) (envelope-from vangyzen@trillian.vangyzen.net) Received: (from vangyzen@localhost) by trillian.vangyzen.net (8.12.5/8.12.5/Submit) id g6J2AZx8003921; Thu, 18 Jul 2002 22:10:35 -0400 (EDT) (envelope-from vangyzen) Message-Id: <200207190210.g6J2AZx8003921@trillian.vangyzen.net> Date: Thu, 18 Jul 2002 22:10:35 -0400 (EDT) From: Eric van Gyzen To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: bin/40747: sh(1) does not honor -e and -n concurrently Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >Number: 40747 >Category: bin >Synopsis: sh(1) does not honor -e and -n concurrently >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Jul 18 19:20:01 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Eric van Gyzen >Release: FreeBSD 4.6-STABLE i386 >Organization: >Environment: System: FreeBSD trillian.vangyzen.net 4.6-STABLE FreeBSD 4.6-STABLE #3: Sun Jul 14 19:03:47 EDT 2002 vangyzen@trillian.vangyzen.net:/build/src/sys/compile/TRILLIAN i386 >Description: The sh(1) manpage claims that the "echo" builtin command accepts any combination of the -e and -n flags, but it actually accepts only one flag per invocation. >How-To-Repeat: The following sh(1) command does not behave as documented: $ echo -en "\033]0;${HOST}\007" >Fix: Following patch allows "-en" and "-ne" combinations. A more extensive patch to allow "-e -n" or "-n -e" is left as an exercise for the reader. --- bin/sh/bltin/echo.c.orig Thu Jul 18 21:39:13 2002 +++ bin/sh/bltin/echo.c Thu Jul 18 21:40:22 2002 @@ -73,6 +73,12 @@ eflag++; #endif ap++; + } else if (equal(p, "-ne") || equal(p, "-en")) { +#ifndef eflag + eflag++; +#endif + nflag++; + ap++; } } while ((p = *ap++) != NULL) { >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message