From f80e156de95bbf723355cde3d9ba1d2a66eefef0 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Fri, 30 Aug 2002 16:03:52 +0000 Subject: Christopher Faylor * tty.cc (tty_list::allocate_tty): Use GetConsoleWindow, if available. Call FindWindow in a loop. --- winsup/cygwin/tty.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'winsup/cygwin/tty.cc') diff --git a/winsup/cygwin/tty.cc b/winsup/cygwin/tty.cc index bb9f8409f..360fa2ef5 100644 --- a/winsup/cygwin/tty.cc +++ b/winsup/cygwin/tty.cc @@ -196,7 +196,7 @@ tty_list::allocate_tty (int with_console) if (!with_console) console = NULL; - else + else if (!(console = GetConsoleWindow ())) { char *oldtitle = new char [TITLESIZE]; @@ -218,8 +218,12 @@ tty_list::allocate_tty (int with_console) __small_sprintf (buf, "cygwin.find.console.%d", myself->pid); SetConsoleTitle (buf); - Sleep (40); - console = FindWindow (NULL, buf); + for (int times = 0; times < 25; times++) + { + Sleep (10); + if ((console = FindWindow (NULL, buf))) + break; + } SetConsoleTitle (oldtitle); Sleep (40); ReleaseMutex (title_mutex); -- cgit v1.2.3