delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/2000/12/15/21:09:59

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-developers-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin-developers/>
List-Post: <mailto:cygwin-developers AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-developers-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-developers-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com
Date: Fri, 15 Dec 2000 21:09:40 -0500
From: Christopher Faylor <cgf AT redhat DOT com>
To: cygwin-developers AT cygwin DOT com
Subject: Re: Serial blocking read
Message-ID: <20001215210940.A12596@redhat.com>
Reply-To: cygwin-developers AT cygwin DOT com
Mail-Followup-To: cygwin-developers AT cygwin DOT com
References: <Pine DOT GSO DOT 4 DOT 21 DOT 0012151727280 DOT 7629-100000 AT myth8 DOT Stanford DOT EDU>
Mime-Version: 1.0
User-Agent: Mutt/1.3.11i
In-Reply-To: <Pine.GSO.4.21.0012151727280.7629-100000@myth8.Stanford.EDU>; from cobbler@stanford.edu on Fri, Dec 15, 2000 at 05:38:09PM -0800

I think this is coming from fhandler_serial.cc but I don't know for
sure.  Can you provide a unified diff?  A complete unified diff will
show the filename and give a little more context.

The contributing link on http://cygwin.com should give you some pointers on how
to do this and how to provide a patch.

cgf

On Fri, Dec 15, 2000 at 05:38:09PM -0800, Dan Morris wrote:
>Has anyone else had problems with serial port reads blocking even when
>O_NONBLOCK is passed to _read in the 1.1.6-1 DLL?
>
>I noticed that my reads were appropriately non-blocking most of the time, but
>blocked whenever "overlapped_armed" was set, because in this case raw_read
>never finds out how many bytes are in the serial port's buffer.  This patch
>seems to fix the problem for me :
>
>121a122,128
>>       if (overlapped_armed) {
>>           if (!ClearCommError (get_handle (), &ev, &st))
>> 	          goto err;
>>           else if (st.cbInQue)
>>             inq = st.cbInQue;
>>       }
>> 
>
>If anyone else has found a better solution to this problem, let me know...
>otherwise perhaps this patch will fix things.
>
>-Dan
> 
>Dan Morris
>http://techhouse.brown.edu/dmorris
>
>Tiqit Computers
>http://www.tiqit.com
>

-- 
cgf AT cygnus DOT com                        Red Hat, Inc.
http://sources.redhat.com/            http://www.redhat.com/

- Raw text -


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