[zeromq-dev] memory leak in zmq_poll()?

Kamil Shakirov kamils80 at gmail.com
Fri Jan 8 11:52:31 CET 2010


Hi,

When returning from zmq_poll() with timeout the allocated pollset
doesn't get freed. Checked with valgrind.


diff --git a/src/zmq.cpp b/src/zmq.cpp
index 62ee562..92ddef1 100644
--- a/src/zmq.cpp
+++ b/src/zmq.cpp
@@ -338,8 +338,10 @@ int zmq_poll (zmq_pollitem_t *items_, int nitems_,
long tim
         errno_assert (rc >= 0);
 
         //  If timeout was hit with no events signaled, return zero.
-        if (!initial && rc == 0)
+        if (!initial && rc == 0) {
+            free (pollfds);
             return 0;
+       }
 
         //  From now on, perform blocking polling.
         initial = false;


-- 
--wbr.




More information about the zeromq-dev mailing list