This is the mail archive of the
mailing list for the Cygwin project.
Re: Issue with run.exe and PWD with spaces since last update (Cygwin 1.7.21)
- From: Corinna Vinschen <corinna-cygwin at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 17 Jul 2013 14:59:16 +0200
- Subject: Re: Issue with run.exe and PWD with spaces since last update (Cygwin 1.7.21)
- References: <295777180 dot 20130716202913 at mtu-net dot ru>
- Reply-to: cygwin at cygwin dot com
On Jul 16 20:29, Andrey Repin wrote:
> Greetings, All!
> I'm trying to execute a script that was working fine until recent update.
> It doesn't crash, just, for some reason, trim the last component of a path.
> In a nutshell, the issue is this:
> $ mkdir "/a b"
> $ cd "/a b"
> $ ls -l "$SYSTEMROOT/System32/notepad.exe"
> (just to confirm that the file actually exists)
> $ run "$SYSTEMROOT/System32/notepad.exe"
> Error pops up:
This never works, even in any other directory. It's the same problem
which disallows checkX to work, as reported in
The cause is an optimization when calling cygwin executables. So far,
Cygwin executables got their arguments via mmeory copy as well as via
the single-line cmdline argument of CreateProcess. We removed the
latter since it was never meant to work that way in the first place.
Unfortunately it turns out that run/run2/checkX are Cygwin executables
which don't have a main routine, but rather a WinMain routine. The
latter has a single cmdline argument, which is generated via
GetCommandLine(). But since Cygwin executables get no single-line
command line anymore, this stopped working.
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple