diff --git a/lib/modules/Protocols.pmod/Line.pmod b/lib/modules/Protocols.pmod/Line.pmod index a315ee42575a8aa1ea2e02e79399e61fdf7ee427..92aa8588e8598ef749d2df825c354eab07954e86 100644 --- a/lib/modules/Protocols.pmod/Line.pmod +++ b/lib/modules/Protocols.pmod/Line.pmod @@ -1,5 +1,5 @@ /* - * $Id: Line.pmod,v 1.6 1998/10/16 00:08:11 nisse Exp $ + * $Id: Line.pmod,v 1.7 1998/10/16 15:34:58 grubba Exp $ * * Line-buffered protocol handling. * @@ -25,6 +25,9 @@ class simple static void do_timeout() { if (con) { + catch { + con->set_nonblocking(0,0,0); // Make sure all callbacks are cleared. + }; catch { con->close(); }; @@ -167,6 +170,7 @@ class simple if (handle_data || sizeof(read_buffer) || sizeof(multi_line_buffer)) { werror("close_callback(): Unexpected close!\n"); } + con->set_nonblocking(0,0,0); // Make sure all callbacks are cleared. con->close(); con = 0; }