Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
To: cygwin@cygwin.com
From: Daniel Miller <dan@imi-test.com>
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: <Xns95816351E4587dancarddupercom@80.91.229.5>
References: <Xns958070E64AD1Adancarddupercom@80.91.229.5> <Xns95815D0F71AA5dancarddupercom@80.91.229.5>
X-Complaints-To: usenet@sea.gmane.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 <dan@imi-test.com> wrote in
news:Xns95815D0F71AA5dancarddupercom@80.91.229.5: 

> Daniel Miller <dan@imi-test.com> wrote in
> news:Xns958070E64AD1Adancarddupercom@80.91.229.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/

