| delorie.com/archives/browse.cgi | search |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| X-Spam-Check-By: | sourceware.org |
| Date: | Thu, 20 Aug 2009 10:39:41 -0400 |
| From: | Christopher Faylor <cgf-use-the-mailinglist-please AT cygwin DOT com> |
| To: | cygwin AT cygwin DOT com |
| Subject: | Re: [ANNOUNCEMENT] Updated: run-1.1.11-1 |
| Message-ID: | <20090820143940.GA13570@ednor.casa.cgf.cx> |
| Reply-To: | cygwin AT cygwin DOT com |
| Mail-Followup-To: | cygwin AT cygwin DOT com |
| References: | <200908171705 DOT n7HH5TYe024203 AT StraightRunning DOT com> <4A89A490 DOT 1050108 AT cwilson DOT fastmail DOT fm> <4A8D429A DOT 1070306 AT byu DOT net> <4A8D4B6A DOT 9080706 AT gmail DOT com> |
| MIME-Version: | 1.0 |
| In-Reply-To: | <4A8D4B6A.9080706@gmail.com> |
| User-Agent: | Mutt/1.5.20 (2009-06-14) |
| Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
| List-Id: | <cygwin.cygwin.com> |
| List-Unsubscribe: | <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com> |
| List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
| List-Archive: | <http://sourceware.org/ml/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
| Sender: | cygwin-owner AT cygwin DOT com |
| Mail-Followup-To: | cygwin AT cygwin DOT com |
| Delivered-To: | mailing list cygwin AT cygwin DOT com |
On Thu, Aug 20, 2009 at 02:11:06PM +0100, Dave Korn wrote:
>Eric Blake wrote:
>
>> See this thread on the gnulib list, which claims that you can use this
>> undocumented snippet to decide whether a HANDLE is a console:
>>
>>> #define IsHandleConsole(h) (((long) (h) & 3) == 3)
>>
>> http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00065.html
>
> I wouldn't rely on that for a microsecond. The low two bits of a HANDLE are
>pretty free form and could easily be used for other purposes by other types of
>object. Read the rest of the thread; it's a convention used internally by
>WINE. MS doesn't necessarily follow suit. See also Chen on handles:
>
>http://blogs.msdn.com/oldnewthing/archive/2005/01/21/358109.aspx
Is there something wrong with Cygwin's code for determining if a handle is a
console?
...
if (GetConsoleScreenBufferInfo (handle, &buf))
{
...
}
else if (GetNumberOfConsoleInputEvents (handle, (DWORD *) &buf))
{
...
}
It's been working pretty well for centuries.
cgf
--
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
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |