From 2131e85cd76152f965a1891a643bfb3bb16db78e Mon Sep 17 00:00:00 2001 From: Stefan Radomski Date: Tue, 4 Dec 2012 17:41:08 +0100 Subject: [PATCH] Break early when pipe to be removed was found --- src/socket_base.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/socket_base.cpp b/src/socket_base.cpp index 7409c467..7fe40089 100644 --- a/src/socket_base.cpp +++ b/src/socket_base.cpp @@ -1012,12 +1012,10 @@ void zmq::socket_base_t::terminated (pipe_t *pipe_) xterminated (pipe_); // Remove pipe from inproc pipes - inprocs_t::iterator it = inprocs.begin(); - while (it != inprocs.end()) { + for (inprocs_t::iterator it = inprocs.begin(); it != inprocs.end(); ++it) { if (it->second == pipe_) { - inprocs.erase(it++); - } else { - it++; + inprocs.erase(it); + break; } }