On Wed, Jul 9, 2008 at 3:03 PM, <buldozer at aufbix.org> wrote: > Hello, > > > I started noticing memory leaks within latest svn builds (I used quite old > svn > build until recently - maybe some 5 months old). My app is pjsua-lib based, > but > I guess that leaks should be present in everything pjmedia related, as they > originate from libspeex's os_support.h They are also cumulative - with > every > call, there are 20 bytes (four leaks) more, which remain allocated. > > Sorry for the late reply (needed some time to setup dev env to verify this). The leaks seem to have come from Speex itself (the echo canceller). I've reported this to Speex list and lets just wait for a fix. There is also some other leaks from libSRTP. I've put these in http://trac.pjsip.org/repos/ticket/557 and http://trac.pjsip.org/repos/ticket/558 Thanks for the report. Cheers Benny > I attached sample data returned by _CrtDumpMemoryLeaks(): > > > Greets, Toni > > ----- > > All leaks are allocated with: > > static inline void *speex_alloc (int size) > { > /* WARNING: this is not equivalent to malloc(). If you want to use > malloc() > or your own allocator, YOU NEED TO CLEAR THE MEMORY ALLOCATED. > Otherwise > you will experience strange bugs */ > return calloc(size,1); > } > #endif > > > > Leaks with one call made: > > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3234} normal block at 0x03EDFEE0, 8 bytes long. > Data: < D { > 9F B8 A7 44 9B 7B A8 C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3233} normal block at 0x01D78AD8, 4 bytes long. > Data: <Q > 51 91 0E C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3232} normal block at 0x01D78A98, 4 bytes long. > Data: <P > 50 91 0E C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3231} normal block at 0x052C4FA8, 4 bytes long. > Data: < > 00 00 00 00 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3147} normal block at 0x03ECB668, 8 bytes long. > Data: < i D y > CA 69 D2 44 8F 79 D2 C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3146} normal block at 0x03ECB628, 4 bytes long. > Data: <yS A> 79 53 0F 41 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3145} normal block at 0x03ECB5E8, 4 bytes long. > Data: <sS A> 73 53 0F 41 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3144} normal block at 0x03ECB5A8, 4 bytes long. > Data: < > 00 00 00 00 > > > Leaks with two calls: > > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3341} normal block at 0x03CBCEE0, 8 bytes long. > Data: <Gr DC} > 47 72 D2 44 43 7D D2 C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3340} normal block at 0x03CBCEA0, 4 bytes long. > Data: < B> A2 C1 A4 42 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3339} normal block at 0x03CBF7C0, 4 bytes long. > Data: < B> A3 C1 A4 42 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3338} normal block at 0x03CBF780, 4 bytes long. > Data: < > 00 00 00 00 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3233} normal block at 0x05264F68, 8 bytes long. > Data: <' D > 27 FC DA 44 09 EA DA C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3232} normal block at 0x05264F28, 4 bytes long. > Data: <+ g > 2B CE 67 C3 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3231} normal block at 0x05264EE8, 4 bytes long. > Data: <+ g > 2B CE 67 C3 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3230} normal block at 0x03CBFFB0, 4 bytes long. > Data: < > 00 00 00 00 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3146} normal block at 0x03CAB428, 8 bytes long. > Data: < x D > DD 78 CB 44 C5 93 CB C4 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3145} normal block at 0x03CAB3E8, 4 bytes long. > Data: < > 88 0D A1 C3 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3144} normal block at 0x03CAB3A8, 4 bytes long. > Data: < > 88 0D A1 C3 > e:\my documents\visual studio > 2005\projects\libs\pjproject\third_party\speex\libspeex\os_support.h(56) : > {3143} normal block at 0x03CAB368, 4 bytes long. > Data: < > 00 00 00 00 > > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080711/024c6b64/attachment-0001.html