]> sigrok.org Git - libserialport.git/commitdiff
sp: clear HUPCL to preserve control lines on close
authorBen Gardiner <redacted>
Tue, 22 Sep 2020 03:10:08 +0000 (03:10 +0000)
committerBen Gardiner <redacted>
Tue, 22 Sep 2020 03:10:08 +0000 (03:10 +0000)
The comment and code are out of sync. The comments say "leave control
lines alone on close." The HUPCL bit, when set, will "Lower modem control
lines after last process closes the device (hang up)."

To match the intent captured in the comment, the HUPCL bit should be
cleared.

Signed-off-by: Ben Gardiner <redacted>
serialport.c

index 1daba1cf58ffac67ade1c817bc387f9f62ed9a32..d088398d9bbf226eb83d1c688871198b5ed0a9f4 100644 (file)
@@ -633,7 +633,8 @@ SP_API enum sp_return sp_open(struct sp_port *port, enum sp_mode flags)
        data.term.c_cc[VTIME] = 0;
 
        /* Ignore modem status lines; enable receiver; leave control lines alone on close. */
-       data.term.c_cflag |= (CLOCAL | CREAD | HUPCL);
+       data.term.c_cflag |= (CLOCAL | CREAD);
+       data.term.c_cflag &= ~(HUPCL);
 #endif
 
 #ifdef _WIN32