On 26 March 2012 15:44, Tony Houghton h@realh.co.uk wrote:
How would you analyze or debug a memory leak in a running environment:
- which thread/plugin is the root cause?
- which datastructure sees the growth?
- which allocs are not bracketed by a proper de-alloc?
Debian also includes a script to run vdr in valgrind but it didn't find the leak even when I added the --show-reachable option. Perhaps I need to check the fork-related options.
I haven't tried static analysis of the source code so far because C++ isn't my forte. Are any of eepg's developers available to check into this?
When I briefly ran vdr under valgrind earlier this month, it threw up a number of potential memory leaks in eepg, so I'm surprised you're not seeing those. I'll have a quick look on my box later to see if I have the .log output handy.
EEPG also caused a segfault in VDR a few times whilst valgrind was running. Tbh it should probably be rewritten from scratch, ideally with separate plugins for each of the supported extended epg services, so you can run a minimal set.