Skip to content

Commit 6086132

Browse files
committed
Problem: inconsistent error handling in poller_t
Solution: make poller_t::add and poller_t::remove throw error_t on error, return void
1 parent 16a7651 commit 6086132

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

zmq.hpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1013,22 +1013,22 @@ namespace zmq
10131013
return *this;
10141014
}
10151015

1016-
bool add (zmq::socket_t &socket, short events, std::function<void(void)> &handler)
1016+
void add (zmq::socket_t &socket, short events, std::function<void(void)> &handler)
10171017
{
10181018
if (0 == zmq_poller_add (poller_ptr, socket.ptr, handler ? &handler : NULL, events)) {
10191019
poller_events.emplace_back (zmq_poller_event_t ());
1020-
return true;
1020+
return;
10211021
}
1022-
return false;
1022+
throw error_t ();
10231023
}
10241024

1025-
bool remove (zmq::socket_t &socket)
1025+
void remove (zmq::socket_t &socket)
10261026
{
10271027
if (0 == zmq_poller_remove (poller_ptr, socket.ptr)) {
10281028
poller_events.pop_back ();
1029-
return true;
1029+
return;
10301030
}
1031-
return false;
1031+
throw error_t ();
10321032
}
10331033

10341034
bool wait (std::chrono::milliseconds timeout)

0 commit comments

Comments
 (0)