[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: getch() waits even nodelay is set

From: Thomas Dickey
Subject: Re: getch() waits even nodelay is set
Date: Sat, 20 Jul 2002 11:24:36 -0400
User-agent: Mutt/1.2.5i

On Sat, Jul 20, 2002 at 10:05:42AM -0400, Fangtu Qiu wrote:
> RedHat 7.3 uses gcc 2.96-110.
> More testing:
> Same code works fine on RedHat 7.2 with both gcc and g++. The binary 
> compiled by g++ on RedHat 7.2 didn't work on 7.3.
> Replacing ncurses 5.2-26 on RedHat 7.3 with version 5.2-12 from 7.2 
> distribution corrects the problem.

I have a copy of the spec-file for 5.2-31 (and don't see anything relevant).
They've added several bugs in the terminfo entries, but haven't done
any damage to the C code that I can tell by reading the patches.

> I checked the document of stream I/O. It says one should not mix with 
> stdio. But there is no stream I/O routine in the code I provided. This 
> confuses me.

I'm guessing that the stream initialization interferes with ncurses'
code that changes the terminal input to raw mode.  You may be able to
see this by using strace.

unrelated (I think - but related to C++):

One thing that comes to mind is that (noticed with gcc 3.x) the configure check
for C++ bool type doesn't work because someone decided to break the prototype
for exit().  That's "fixed" in current autoconf basically by substituting a new
bug (making the test more gcc-specific than it should be).  (When I last put a
patch for autoconf 2.5x out, someone immmediately found a problem in that
version which is unrelated to my own changes, so I reverted that).

I don't recall what 2.96.x does for that.  You may want to try compiling
ncurses (with the current rollup patch) and see if that part of the configure
script fails for your compiler.  In that case it's using the wrong default
(unsigned versus char) for bool, which could cause other subtle problems.
Thomas E. Dickey <address@hidden>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]