delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/02/23/11:19:56

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW
X-Spam-Check-By: sourceware.org
Received-SPF: pass (google.com: domain of beylin DOT i AT gmail DOT com designates 10.180.95.1 as permitted sender) client-ip=10.180.95.1;
Authentication-Results: mr.google.com; spf=pass (google.com: domain of beylin DOT i AT gmail DOT com designates 10.180.95.1 as permitted sender) smtp.mail=beylin DOT i AT gmail DOT com; dkim=pass header.i=beylin DOT i AT gmail DOT com
MIME-Version: 1.0
Date: Thu, 23 Feb 2012 17:19:25 +0100
Message-ID: <CABtMoG_py0vLpdKioY4Ox+vKN8vxKZXVOME9VysfqutWSt64rA@mail.gmail.com>
Subject: 1.7.10 : output from .NET programs does not get through pipeline
From: Ilya Beylin <beylin DOT i AT gmail DOT com>
To: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Hi all,

I started observing some very strange effects when launching .NET
programs from cygwin, after upgrading to version 1.7.10.
The example below is using the MSBuild.exe as an example, but I get
analogous results with any console program compiled for .NET.
One can see that each pipeline  works normally exactly once. The
second time the pipe does not bring anything.
I do not know if it is possible to reset it; killing all cygwin
processes and logging off apparently does not help.

$  MSBuild.exe -version
Microsoft (R) Build Engine Version 3.5.30729.1
[Microsoft .NET Framework, Version 2.0.50727.3625]
Copyright (C) Microsoft Corporation 2007. All rights reserved.

3.5.30729.1

$ MSBuild.exe -version | head -1
Microsoft (R) Build Engine Version 3.5.30729.1

$ MSBuild.exe -version | head -1

$ MSBuild.exe -version | wc
      4      20     177

$ MSBuild.exe -version | wc
      0       0       0

One program that surprisingly does not get broken so easily is "perl"

$ MSBuild.exe -version   | perl -ne print | wc
      4      20     177

$ MSBuild.exe -version   | perl -ne print | wc
      4      20     177

Output from normal DOS, windows and cygwin programs is not affected.

Output redirection with ">" works as usual.

Command substitution with $(  ) or ` ` does not work if the output
comes from .NET program:

$ echo +++ `MSBuild /help` +++
+++ +++

$ echo +++ `MSBuild.exe /help>tmp.tmp ; dos2unix tmp.tmp; head tmp.tmp` +++
dos2unix: converting file tmp.tmp to Unix format ...
+++ Microsoft (R) Build Engine Version 3.5.30729.1 [Microsoft .NET
Framework, Version 2.0.50727.3625] Copyright (C) Microsoft Corporation
2007. All rights reserved. Syntax: MSBuild.exe [options] [project
file] Description: Builds the specified targets in the project file.
If a project file is not specified, MSBuild searches the current
working directory for a file that has a file extension that ends in
"proj" and uses that file. +++

I get similar results on other computers running Windows XP, Vista and
7 with 1.7.10 installed, but not with 1.7.9.

Have you seen anything like this? How can it be fixed?

Regards
Ilya Beylin

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


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