Date: Mon, 14 Jul 2003 07:20:18 -0700 (PDT) From: Volker Stolz <stolz@i2.informatik.rwth-aachen.de> To: freebsd-ports-bugs@FreeBSD.org Subject: Re: ports/54012: [patch] devel/mk: Update to 1.4 Message-ID: <200307141420.h6EEKIrI063055@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/54012; it has been noted by GNATS. From: Volker Stolz <stolz@i2.informatik.rwth-aachen.de> To: FreeBSD-gnats-submit@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org Cc: osa@FreeBSD.org Subject: Re: ports/54012: [patch] devel/mk: Update to 1.4 Date: Mon, 14 Jul 2003 16:12:59 +0200 --PNTmBPCT7hxwcZjr Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Jul 02, 2003 at 05:40:11AM -0700, FreeBSD-gnats-submit@FreeBSD.org wrote: > http://www.freebsd.org/cgi/query-pr.cgi?pr=54012 > > >Category: ports > >Responsible: freebsd-ports-bugs > >Synopsis: [patch] devel/mk: Update to 1.4 > >Arrival-Date: Wed Jul 02 05:40:11 PDT 2003 Osa@ asked me to look into the tmpnam() issue. Fix seems to have been lost in the noise. Two (new) patchfiles attached: - patch-src-main.c - patch-src-Posix.c Volker -- http://www-i2.informatik.rwth-aachen.de/stolz/ *** PGP *** S/MIME rage against the finite state machine --PNTmBPCT7hxwcZjr Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="mk.1" --- src/main.c.orig Wed Jun 5 17:30:39 2002 +++ src/main.c Thu Jul 3 18:34:19 2003 @@ -33,7 +33,7 @@ main(int argc, char **argv) { Word *w; - char *s, *temp; + char *s; char *files[256], **f = files, **ff; int sflag = 0; int i; @@ -41,6 +41,8 @@ Biobuf tb; Bufblock *buf; Bufblock *whatif; + char TMPLATE[14]; + (void)strncpy(TMPLATE,"/tmp/mk.XXXXX", sizeof(TMPLATE)); /* * start with a copy of the current environment variables @@ -133,21 +135,15 @@ /* assignment args become null strings */ - temp = 0; for(i = 0; argv[i]; i++) if(utfrune(argv[i], '=')){ bufcpy(buf, argv[i], strlen(argv[i])); insert(buf, ' '); if(tfd < 0){ - temp = maketmp(); - if(temp == 0) { - perror("temp file"); - Exit(); - } - close(create(temp, OWRITE, 0600)); - if((tfd = open(temp, 2)) < 0){ - perror(temp); + if ((tfd = mkstemp(TMPLATE)) < 0){ + perror(TMPLATE); Exit(); } + unlink(TMPLATE); Binit(&tb, tfd, OWRITE); } Bprint(&tb, "%s\n", argv[i]); @@ -157,7 +153,6 @@ Bflush(&tb); LSEEK(tfd, 0L, 0); parse("command line args", tfd, 1); - remove(temp); } if (buf->current != buf->start) { --PNTmBPCT7hxwcZjr Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="mk.2" --- src/Posix.c.orig Thu Jul 3 16:08:16 2003 +++ src/Posix.c Thu Jul 3 16:08:31 2003 @@ -276,14 +276,6 @@ signal(sigmsgs[i].sig, notifyf); } -char* -maketmp(void) -{ - static char temp[L_tmpnam]; - - return tmpnam(temp); -} - int chgtime(char *name) { --PNTmBPCT7hxwcZjr--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200307141420.h6EEKIrI063055>