Memory leaks detector report:
$ valgrind --leak-check=full /usr/bin/radosgw -c /etc/ceph/ceph.conf -n
client.radosgw.gateway -
...
==16986== 8 bytes in 1 blocks are definitely lost in loss record 14 of 83
==16986== at 0x4A075BC: operator new(unsigned long) (vg_replace_malloc.c:298)
==16986== by 0x58980B8: ceph::log::Log::set_flush_on_exit() (in /usr/lib64/librados.so.2.0.0)
==16986== by 0x6BE3CA: global_init(std::vector<char const*, std::allocator<char const*> >*, st
==16986== by 0x5B6B0A: main (in /usr/bin/radosgw)
...
Signed-off-by: Andrey Kuznetsov <Andrey_Kuznetsov@epam.com>
Log *l = *(Log **)p;
if (l)
l->flush();
+ delete (Log **)p;// Delete allocated pointer (not Log object, the pointer only!)
}
Log::Log(SubsystemMap *s)