Dmitry Timoshkov : ntdll: Fallback to ioctl(TIOCOUTQ) if ioctl( TIOCSERGETLSR) fails.
Module: wine Branch: master Commit: e3dcdadaca4ff620ab55b4542af27ada6d2db819 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e3dcdadaca4ff620ab55b4542a... Author: Dmitry Timoshkov <dmitry(a)baikal.ru> Date: Tue Aug 27 17:40:17 2013 +0900 ntdll: Fallback to ioctl(TIOCOUTQ) if ioctl(TIOCSERGETLSR) fails. Most Linux USB-serial drivers don't support TIOCSERGETLSR. --- dlls/ntdll/serial.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dlls/ntdll/serial.c b/dlls/ntdll/serial.c index 91e7230..bb025cf 100644 --- a/dlls/ntdll/serial.c +++ b/dlls/ntdll/serial.c @@ -828,12 +828,12 @@ static NTSTATUS get_irq_info(int fd, serial_irq_info *irq_info) irq_info->temt = 0; /* Generate a single TX_TXEMPTY event when the TX Buffer turns empty*/ #ifdef TIOCSERGETLSR /* prefer to log the state TIOCSERGETLSR */ - if (ioctl(fd, TIOCSERGETLSR, &irq_info->temt)) - { - TRACE("TIOCSERGETLSR err %s\n", strerror(errno)); - return FILE_GetNtStatus(); - } -#elif defined(TIOCOUTQ) /* otherwise we log when the out queue gets empty */ + if (!ioctl(fd, TIOCSERGETLSR, &irq_info->temt)) + return STATUS_SUCCESS; + + TRACE("TIOCSERGETLSR err %s\n", strerror(errno)); +#endif +#ifdef TIOCOUTQ /* otherwise we log when the out queue gets empty */ if (ioctl(fd, TIOCOUTQ, &irq_info->temt)) { TRACE("TIOCOUTQ err %s\n", strerror(errno));
participants (1)
-
Alexandre Julliard