From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3806 invoked by alias); 26 May 2011 06:02:41 -0000 Received: (qmail 3769 invoked by uid 22791); 26 May 2011 06:02:19 -0000 X-Spam-Check-By: sourceware.org Received: from aquarius.hirmke.de (HELO calimero.vinschen.de) (217.91.18.234) by sourceware.org (qpsmtpd/0.83/v0.83-20-g38e4449) with ESMTP; Thu, 26 May 2011 06:02:05 +0000 Received: by calimero.vinschen.de (Postfix, from userid 500) id 5083A2CB9E4; Thu, 26 May 2011 08:02:02 +0200 (CEST) Date: Thu, 26 May 2011 06:02:00 -0000 From: Corinna Vinschen To: cygwin@cygwin.com Subject: Re: Cygwin 1.7.x on Windows 7: Exit statuses of Win32 executables are sometimes wrong Message-ID: <20110526060202.GW848@calimero.vinschen.de> Reply-To: cygwin@cygwin.com Mail-Followup-To: cygwin@cygwin.com References: <0C817B08-1920-43DB-B9A0-26E4B2E362EA@apple.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <0C817B08-1920-43DB-B9A0-26E4B2E362EA@apple.com> User-Agent: Mutt/1.5.21 (2010-09-15) Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com X-SW-Source: 2011-05/txt/msg00381.txt.bz2 On Apr 29 11:35, John Dong wrote: > Hi, > > Cygwin on Windows 7, seems to exhibit a rather peculiar behavior: Sometimes the exit status of a Win32 process is incorrectly captured by Cygwin. Please: http://cygwin.com/acronyms/#PCYMTWLL http://cygwin.com/acronyms/#TOFU > [...] > > int _tmain(int argc, _TCHAR* argv[]) > > { > > int ret = _ttoi(argv[1]); > > _tprintf(_T("Exiting with %i\n"), ret); > > > > return ret; > > } > > Then, I wrote a shell script that called this executable ("exiter.exe") with argument 0 in an infinite loop: > > > #!/bin/sh > > set -e > > while true; do > > /cygdrive/c/exiter.exe 0 > > echo $? > > done > > > > I expect this script to run forever, as the exit code should always be zero. However, after running this overnight, I see the script terminate: > > > Exiting with 0 > > 0 > > Exiting with 0 > > > > $ echo $? > > 1 > > I'm running your testcase on a W7 32 bit machine for about 12 hours now, and it's still running. The only difference is that I built exiter.exe using MingW gcc, rather than VC++, but that doesn't change the fact that the resulting application is a native one. Did any of you running into this problem check if this could be a BLODA problem(*)? Corinna (*) http://cygwin.com/faq/faq.using.html#faq.using.bloda -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- 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