Module: wine Branch: master Commit: fa4304f06eebc98af35c03569c4bc28f9d881d4c URL: http://source.winehq.org/git/wine.git/?a=commit;h=fa4304f06eebc98af35c03569c...
Author: Tom Brus tombrus@gmail.com Date: Sun Oct 28 21:24:40 2007 +0100
ntdll: Serial/COM code misinterpreted XON/XOFF direction.
---
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 bd6f9ca..be398a5 100644 --- a/dlls/ntdll/serial.c +++ b/dlls/ntdll/serial.c @@ -227,9 +227,9 @@ static NTSTATUS get_hand_flow(int fd, SERIAL_HANDFLOW* shf) #endif shf->ControlHandShake |= SERIAL_RTS_CONTROL; } - if (port.c_iflag & IXON) - shf->FlowReplace |= SERIAL_AUTO_RECEIVE; if (port.c_iflag & IXOFF) + shf->FlowReplace |= SERIAL_AUTO_RECEIVE; + if (port.c_iflag & IXON) shf->FlowReplace |= SERIAL_AUTO_TRANSMIT;
shf->XonLimit = 10; @@ -611,13 +611,13 @@ static NTSTATUS set_handflow(int fd, const SERIAL_HANDFLOW* shf) #endif
if (shf->FlowReplace & SERIAL_AUTO_RECEIVE) - port.c_iflag |= IXON; - else - port.c_iflag &= ~IXON; - if (shf->FlowReplace & SERIAL_AUTO_TRANSMIT) port.c_iflag |= IXOFF; else port.c_iflag &= ~IXOFF; + if (shf->FlowReplace & SERIAL_AUTO_TRANSMIT) + port.c_iflag |= IXON; + else + port.c_iflag &= ~IXON; if (tcsetattr(fd, TCSANOW, &port) == -1) { ERR("tcsetattr error '%s'\n", strerror(errno));