id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 4089,Memory leak in Boost.Signals2 when the signal is not invoked,dan.berindei@…,Frank Mori Hess,"The attached program leaks memory by attaching and detaching slots from a signal in a loop: {{{ boost::signals2::signal sig; boost::signals2::connection conn1, conn2, conn3, conn4; while (true) { conn1.disconnect(); conn2.disconnect(); conn1 = sig.connect(slot); conn2 = sig.connect(slot); conn3.disconnect(); conn4.disconnect(); conn3 = sig.connect(slot); conn4 = sig.connect(slot); //sig(); } }}} Invoking the signal (i.e. uncommenting the 'sig()' line) plugs the memory leak, however in my original setting it entails lots of unnecessary work so it's not a very good solution. My guess is that _garbage_collector_it is set to _shared_state->connection_bodies().end() on invocation, but not on a new connection, so it never goes back to the beginning of the list.",Bugs,closed,To Be Determined,signals2,Boost 1.55.0,Problem,invalid,,