delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1996/08/11/05:47:44

Date: Sun, 11 Aug 1996 12:41:26 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: DJ Delorie <dj AT delorie DOT com>
Cc: djgpp-workers AT delorie DOT com
Subject: Re: `system' and wildcard expansion
In-Reply-To: <199607291242.IAA16781@delorie.com>
Message-Id: <Pine.SUN.3.91.960811123219.24678g-100000@is>
Mime-Version: 1.0

On Mon, 29 Jul 1996, DJ Delorie wrote:

> > How can this be backward-compatible if the old crt0 doesn't know about 
> > the new method?  I thought about this but didn't find any acceptable 
> > solution.  But I will be glad to hear any ideas on this.
> 
> Pass the 128-char command line the regular way.  Provide a hook (4dos
> way?)  that points to a 4k-char command line.  Don't use !proxy.

OK, I went back to the drawing board and now I have such a version of
`system'.  The long command lines from `system' are passed via environment
variable called " !proxy" (lower-cased and with the leading blank) and are
expanded just like if they were coming from the DOS command-line tail; 
`spawn' passes its command lines via !proxy on the command line, as it
does now, and these arguments aren't expanded.  This required a change to
c1args.c (which was the reason I didn't do it in the first place). 

Just a few questions so I could wrap up this adventure and mail the new 
sources:

	1) The GNUish MSDOS method of passing long command lines (`_argc', 
`_arv0', etc. in the environment) is no longer supported.  Shame on me 
for only seeing it now.  I presume it's on purpose (coad bloat and such) 
and due to lack of use, right?

	2) The startup flags that deal with the way argv[0] will look 
like are only applied to __dos_argv0, argv[0] that comes from !proxy 
avoids this conversion.  Is this on purpose?  If not, it's easy to fix, I 
just want to know I don't break something by doing this.

- Raw text -


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