Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com To: cygwin AT cygwin DOT com From: Daniel Miller Subject: Re: When is WinXP not WinXP?? - not *really* OT Date: Wed, 13 Oct 2004 16:45:46 +0000 (UTC) Organization: Cathartes Aura Lines: 39 Message-ID: References: X-Complaints-To: usenet AT sea DOT gmane DOT org X-Gmane-NNTP-Posting-Host: adsl-68-123-127-203.dsl.snfc21.pacbell.net User-Agent: Xnews/06.08.25 X-IsSubscribed: yes Daniel Miller wrote in news:Xns95815D0F71AA5dancarddupercom AT 80 DOT 91 DOT 229 DOT 5: > Daniel Miller wrote in > news:Xns958070E64AD1Adancarddupercom AT 80 DOT 91 DOT 229 DOT 5: > > I propose that this is *not* really off-topic, since the problems that > I'm experiencing do not occur in cmd.exe, nor in 4NT, only in Bash. > So it's something Bash is doing in its environment that is breaking > StdOut, at least relative to whatever Win32 looks at. > > BTW, I did not install Cygwin on the Home machine by copying from the > other machine, I installed it using setup.exe, downloaded from Cygwin. > > Also, in response to Dave Korn's previous message, GetLastError() is > returning error 6 (The handle is Invalid)... > A further note is that handles returned by GetStdHandle() always have GENERIC_READ and GENERIC_WRITE access, "unless SetStdHandle function was used to set a standard handle to be some handle with a lesser access." (per MSDN). Certainly I didn't use SetStdHandle for *any* purpose, which is why the utility works under other shells. Does Bash use SetStdHandle or some equivalent to change the console environment?? // repeating the offending code snippet: /* get the standard handles */ hStdOut = GetStdHandle(STD_OUTPUT_HANDLE); PERR(hStdOut != INVALID_HANDLE_VALUE, "GetStdHandle"); // get screen information. // If this call fails, assume we are re-directing output. bSuccess = GetConsoleScreenBufferInfo(hStdOut, &sinfo) ; // PERR(bSuccess, "GetConsoleScreenBufferInfo"); if (bSuccess == false) { fprintf(stderr, "gcsbi error: %s\n", get_system_message()) ; exit(1) ; redirected = 1 ; return ; } -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/