* times.cc (systime): Correct precision referenced in comment.
* fhandler_tty.cc (fhandler_tty_slave::open): Don't free original windows station since that will cause strange problems displaying fonts. Reset windows station to original station after creating console. * times.cc (hires_ms::usecs): Only reprime when calculated time is less than system time.
This commit is contained in:
parent
becfe4e93e
commit
d090ee8081
|
@ -1,3 +1,16 @@
|
||||||
|
2005-12-12 Nick Duffek <nick@duffek.com>
|
||||||
|
|
||||||
|
* times.cc (systime): Correct precision referenced in comment.
|
||||||
|
|
||||||
|
2005-12-12 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
|
* fhandler_tty.cc (fhandler_tty_slave::open): Don't free original
|
||||||
|
windows station since that will cause strange problems displaying
|
||||||
|
fonts. Reset windows station to original station after creating
|
||||||
|
console.
|
||||||
|
* times.cc (hires_ms::usecs): Only reprime when calculated time is less
|
||||||
|
than system time.
|
||||||
|
|
||||||
2005-12-12 Christopher Faylor <cgf@timesys.com>
|
2005-12-12 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
* pinfo.cc (winpids::add): Don't copy procinfo when there is no cygwin
|
* pinfo.cc (winpids::add): Don't copy procinfo when there is no cygwin
|
||||||
|
|
|
@ -580,21 +580,22 @@ fhandler_tty_slave::open (int flags, mode_t)
|
||||||
&& wincap.pty_needs_alloc_console ())
|
&& wincap.pty_needs_alloc_console ())
|
||||||
{
|
{
|
||||||
BOOL b;
|
BOOL b;
|
||||||
HWINSTA horig = GetProcessWindowStation ();
|
HWINSTA h, horig;
|
||||||
|
h = horig = GetProcessWindowStation ();
|
||||||
if (myself->ctty == -1)
|
if (myself->ctty == -1)
|
||||||
{
|
{
|
||||||
HWINSTA h = CreateWindowStation (NULL, 0, GENERIC_READ | GENERIC_WRITE, &sec_none_nih);
|
h = CreateWindowStation (NULL, 0, WINSTA_ALL_ACCESS, &sec_none_nih);
|
||||||
termios_printf ("CreateWindowStation %p, %E", h);
|
termios_printf ("CreateWindowStation %p, %E", h);
|
||||||
if (h)
|
if (h)
|
||||||
{
|
{
|
||||||
b = SetProcessWindowStation (h);
|
b = SetProcessWindowStation (h);
|
||||||
termios_printf ("SetProcessWindowStation %d, %E", b);
|
termios_printf ("SetProcessWindowStation %d, %E", b);
|
||||||
}
|
}
|
||||||
if (horig)
|
|
||||||
CloseWindowStation (horig);
|
|
||||||
}
|
}
|
||||||
b = AllocConsole (); // will cause flashing if workstation
|
b = AllocConsole (); // will cause flashing if workstation
|
||||||
// stuff fails
|
// stuff fails
|
||||||
|
if (horig && h != horig)
|
||||||
|
SetProcessWindowStation (horig);
|
||||||
termios_printf ("%d = AllocConsole (), %E", b);
|
termios_printf ("%d = AllocConsole (), %E", b);
|
||||||
if (b)
|
if (b)
|
||||||
init_console_handler (TRUE);
|
init_console_handler (TRUE);
|
||||||
|
|
|
@ -41,7 +41,7 @@ systime ()
|
||||||
x.HighPart = ft.dwHighDateTime;
|
x.HighPart = ft.dwHighDateTime;
|
||||||
x.LowPart = ft.dwLowDateTime;
|
x.LowPart = ft.dwLowDateTime;
|
||||||
x.QuadPart -= FACTOR; /* Add conversion factor for UNIX vs. Windows base time */
|
x.QuadPart -= FACTOR; /* Add conversion factor for UNIX vs. Windows base time */
|
||||||
x.QuadPart /= 10; /* Convert to milliseconds */
|
x.QuadPart /= 10; /* Convert to microseconds */
|
||||||
return x.QuadPart;
|
return x.QuadPart;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -644,7 +644,7 @@ hires_ms::usecs ()
|
||||||
|
|
||||||
LONGLONG t = systime ();
|
LONGLONG t = systime ();
|
||||||
LONGLONG res = initime_us + (((LONGLONG) timeGetTime ()) * 1000LL);
|
LONGLONG res = initime_us + (((LONGLONG) timeGetTime ()) * 1000LL);
|
||||||
if (res <= t)
|
if (res < t)
|
||||||
{
|
{
|
||||||
inited = false;
|
inited = false;
|
||||||
prime ();
|
prime ();
|
||||||
|
|
Loading…
Reference in New Issue