From owner-freebsd-bugs Thu Oct 12 1:30: 5 2000 Delivered-To: freebsd-bugs@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id A21DA37B502 for ; Thu, 12 Oct 2000 01:30:02 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id BAA93633; Thu, 12 Oct 2000 01:30:02 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Date: Thu, 12 Oct 2000 01:30:02 -0700 (PDT) Message-Id: <200010120830.BAA93633@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org Cc: From: Dag-Erling Smorgrav Subject: Re: bin/21918: Unjustified basename code removal and subsequent breakage Reply-To: Dag-Erling Smorgrav Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org The following reply was made to PR bin/21918; it has been noted by GNATS. From: Dag-Erling Smorgrav To: ak03@gte.com Cc: FreeBSD-gnats-submit@FreeBSD.ORG Subject: Re: bin/21918: Unjustified basename code removal and subsequent breakage Date: 12 Oct 2000 10:27:39 +0200 I will commit the following patch later today: Index: basename.c =================================================================== RCS file: /home/ncvs/src/usr.bin/basename/basename.c,v retrieving revision 1.5 diff -u -r1.5 basename.c --- basename.c 2000/09/06 07:28:02 1.5 +++ basename.c 2000/10/12 08:23:25 @@ -73,8 +73,9 @@ if ((p = basename(argv[0])) == NULL) err(1, "%s", argv[0]); - if (*++argv && (q = strstr(p, *argv)) && strcmp(q, *argv) == 0) - *q = '\0'; + if (*++argv && (q = strchr(p, '\0') - strlen(*argv)) > p && + strcmp(*argv, q) == 0) + *q = '\0'; (void)printf("%s\n", p); exit(0); } DES -- Dag-Erling Smorgrav - des@ofug.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message