==83504== 1,600 bytes in 100 blocks are definitely lost in loss record 57 of 62
==83504== at 0x10000F681: malloc (in /usr/local/Cellar/valgrind/3.
==83504== by 0x10005E7DD: operator new(unsigned long) (in /usr/lib/libc++.1.dylib)
==83504== by 0x100018F2D: sigc::internal::signal_impl::
==83504== by 0x100000F52: main (signal.h:2667)
And here is the sample code, when connecting a list of slots to a signal, there are always memory leaks.
// -*- c++ -*-
/* Copyright 2002, The libsigc++ Development Team
* Assigned to public domain. Use as you wish without restriction.
*/
#include "testutilities.h"
#include <sstream>
#include <cstdlib>
#include <sigc++/trackable.h>
#include <sigc++/signal.h>
#include <sigc++/functors/slot.h>
#include <sigc++/functors/mem_fun.h>
namespace
{
class my_class
{
public:
sigc::signal<void> destroyed;
};
} // end anonymous namespace
int main(int argc, char* argv[])
{
my_class *c = new my_class();
for (int i = 0; i < 200; i++) {
c->destroyed.connect(sigc::
}
delete(c);
return -1;
}
We tried the latest stable release 2.6.2, this memory leak still there, so I'm wondering whether there will be a new release recently?
Thank you very much!
Best wishes,
Xiaodong Ye