* select.cc (peek_serial): Don't call PurgeComm() to avoid characters loss.

This commit is contained in:
Christopher Faylor 2002-11-15 18:58:12 +00:00
parent 26eb19efe4
commit 4b9ddc7dc9
2 changed files with 7 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2002-11-15 Sergey Okhapkin <sos@prospect.com.ru>
* select.cc (peek_serial): Don't call PurgeComm() to avoid characters
loss.
2002-11-14 Christopher Faylor <cgf@redhat.com> 2002-11-14 Christopher Faylor <cgf@redhat.com>
* exceptions.cc (setup_handler): Add debugging output. Set thread * exceptions.cc (setup_handler): Add debugging output. Set thread
@ -59,9 +64,9 @@
* sec_helper (cygsid::getfromstr): Reorganize to remove * sec_helper (cygsid::getfromstr): Reorganize to remove
calls to strcpy and strtok_r. calls to strcpy and strtok_r.
(cygsid::getfromgr): Change type to __uid32_t instead of int. (cygsid::getfromgr): Change type to __uid32_t instead of int.
Keep only the allow_ntsec branch. Never call LookupAccountSid Keep only the allow_ntsec branch. Never call LookupAccountSid
which calls PDCs, simply return -1 in case of failure. which calls PDCs, simply return -1 in case of failure.
Use cygsid == instead of calling EqualSid and remove test Use cygsid == instead of calling EqualSid and remove test
for NULL psid. for NULL psid.
* security.h: Declare cygsid::getfromgr as __uid32_t. * security.h: Declare cygsid::getfromgr as __uid32_t.

View File

@ -912,19 +912,15 @@ peek_serial (select_record *s, bool)
return s->read_ready = true; return s->read_ready = true;
select_printf ("got something"); select_printf ("got something");
} }
PurgeComm (h, PURGE_TXABORT | PURGE_RXABORT);
break; break;
case WAIT_OBJECT_0 + 1: case WAIT_OBJECT_0 + 1:
PurgeComm (h, PURGE_TXABORT | PURGE_RXABORT);
select_printf ("interrupt"); select_printf ("interrupt");
set_sig_errno (EINTR); set_sig_errno (EINTR);
ready = -1; ready = -1;
break; break;
case WAIT_TIMEOUT: case WAIT_TIMEOUT:
PurgeComm (h, PURGE_TXABORT | PURGE_RXABORT);
break; break;
default: default:
PurgeComm (h, PURGE_TXABORT | PURGE_RXABORT);
debug_printf ("WaitForMultipleObjects"); debug_printf ("WaitForMultipleObjects");
goto err; goto err;
} }