From 87655b0b9d9121465e0b2ea1976b0879b1b1f756 Mon Sep 17 00:00:00 2001 From: Martin Sustrik Date: Tue, 24 Aug 2010 09:57:15 +0200 Subject: listener object unregisters its fd correctly --- src/zmq_engine.cpp | 3 --- src/zmq_listener.cpp | 5 ++--- src/zmq_listener.hpp | 2 +- 3 files changed, 3 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/zmq_engine.cpp b/src/zmq_engine.cpp index 6551bc3..3e98c53 100644 --- a/src/zmq_engine.cpp +++ b/src/zmq_engine.cpp @@ -62,15 +62,12 @@ void zmq::zmq_engine_t::plug (io_thread_t *io_thread_, i_inout *inout_) // Connect to I/O threads poller object. io_object_t::plug (io_thread_); - handle = add_fd (tcp_socket.get_fd ()); set_pollin (handle); set_pollout (handle); // Flush all the data that may have been already received downstream. in_event (); - - // TODO: Re-plug to the new I/O thread & poller! } void zmq::zmq_engine_t::unplug () diff --git a/src/zmq_listener.cpp b/src/zmq_listener.cpp index 93a68f5..4569ac1 100644 --- a/src/zmq_listener.cpp +++ b/src/zmq_listener.cpp @@ -49,9 +49,10 @@ void zmq::zmq_listener_t::process_plug () set_pollin (handle); } -void zmq::zmq_listener_t::process_unplug () +void zmq::zmq_listener_t::process_term () { rm_fd (handle); + own_t::process_term (); } void zmq::zmq_listener_t::in_event () @@ -70,5 +71,3 @@ void zmq::zmq_listener_t::in_event () launch_sibling (init); } - - diff --git a/src/zmq_listener.hpp b/src/zmq_listener.hpp index 05f4522..0a5ef0f 100644 --- a/src/zmq_listener.hpp +++ b/src/zmq_listener.hpp @@ -44,7 +44,7 @@ namespace zmq // Handlers for incoming commands. void process_plug (); - void process_unplug (); + void process_term (); // Handlers for I/O events. void in_event (); -- cgit v1.2.3