Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe@sources.redhat.com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin@sources.redhat.com>
List-Help: <mailto:cygwin-help@sources.redhat.com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner@sources.redhat.com
Delivered-To: mailing list cygwin@sources.redhat.com
Message-ID: <80575AFA5F0DD31197CE00805F650D7602CD62@wilber.adroit.com>
From: "Robinow, David" <drobinow@dayton.adroit.com>
To: "'Jonathan Kamens'" <jik@kamens.brookline.ma.us>,
        cygwin@sourceware.cygnus.com
Subject: RE: cygwin1-20000811: exec*() quoting  backslashes for args conta
	ining spaces?
Date: Wed, 16 Aug 2000 12:00:35 -0400
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C0079B.1D097D50"

------_=_NextPart_001_01C0079B.1D097D50
Content-Type: text/plain;
	charset="iso-8859-1"

You don't have a cygwin version of perl in your path. Try the same command
from a dos box. You won't get what you think you should there either.
 I don't have a cygwin perl handy.  Anybody know how that works?
 Did you have a cygwin perl on your b20 system?
-----Original Message-----
From: Jonathan Kamens [mailto:jik@kamens.brookline.ma.us]
Sent: Wednesday, August 16, 2000 11:29 AM
To: cygwin@sourceware.cygnus.com
Subject: cygwin1-20000811: exec*() quoting backslashes for args
containing spaces?

Put this in foo.pl:
	$" = "\n";
	print "@ARGV\n";

Now in a cygwin window run:
	perl foo.pl '\foo bar' '\foobar'

You SHOUlD see this:
	\foo bar
	\foobar

Instead, you'll see this:
	\\foo bar
	\foobar

The space appears to be the kicker -- when an argument has spaces in
it, the exec*() functions in cygwin1.dll quote the backslashes in it
before passing it to the called process.  This doesn't happen if there
are no spaces.  This seems rather broken.

The reason why I believe that cygwin1.dll is doing the bogus quoting
is because it happens whether you run the command from bash or ash.

I confirmed that this problem exists with two different cygwin1.dll's,
including the cygwin1-20000811 snapshot.  Here's the output of
"cygcheck -s -v -r" for that one:
[Omitted for brevity. See original post]

		      *************************

This is not a problem with Cygwin B20 when using a snapshot of
cygwin1.dll from 1999/9/30:

 4169k 2000/05/02 c:\cygnus\CYGWIN~1\H-I586~1\bin\cygwin1.dll - os=4.0
img=1.0 sys=4.0
                  "cygwin1.dll" v0.0 ts=1999/9/30 11:42

Any thoughts?

  jik

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

------_=_NextPart_001_01C0079B.1D097D50--
