delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/12/23/18:35:05

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f
From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <10112232336.AA14725@clio.rice.edu>
Subject: Re: v2.03 refresh issue - passing 3K argument list [was Re: A new bug?]
To: eliz AT is DOT elta DOT co DOT il
Date: Sun, 23 Dec 2001 17:36:40 -0600 (CST)
Cc: djgpp-workers AT delorie DOT com
In-Reply-To: <1858-Sun23Dec2001211037+0200-eliz@is.elta.co.il> from "Eli Zaretskii" at Dec 23, 2001 09:10:37 PM
X-Mailer: ELM [version 2.5 PL2]
Mime-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> If the issue is the maximum length of the command line that you can
> pass from Make to djecho, then the limit depends on the machine where
> it runs: the 16KB transfer buffer is shared between the command line
> and the environment we inherit to the child, so if your environment
> is smaller, you will be able to pass a longer command.

> Since the environment matters, if a different version of Bash passes a
> few more variables to the child, you get a smaller limit on the
> longest command line.

It doesn't seem to be an "edge" thing.  It fails around 1996 bytes
on the "dtou"ed size of the file being cat'ed on either refreshed 
bash or the one on simtel.  The bash 2.05 seems to
always work no matter how big I made the file.  I tried increasing the
size of the TB and it didn't seem to make any difference.

> Btw, please note that it's not at all certain that Make invokes djecho
> through Bash in this case.  You should check that carefully: I'm not
> sure whether "$(MASK)" has enough magic in it to force Make to call
> the shell.  If you want to be sure Bash is called, add redirection to
> the command.

It invokes bash.  If it doesn't, DJECHO just prints the `cat file.`
instead of the substitution.  At this point I haven't been able to
make a simpler case using just bash to fail; and simple cases without
passing the command to be executed in the symbol didn't fail.

My main concern on this was to figure out if I had broken something
in the refresh.  It appears to me the answer is no - that this is 
some behavior that existed in bash 2.04 before the refresh and it is
fixed in bash 2.05.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019