I cannot get stack traces with VS. I can add a macro to every 
compilation unit that wraps "new" so that __FILE__ and __LINE__ are 
recorded. It's quite a bit of work to re-arrange your header files, 
though. Would that suffice? Alternatively, do you happen to have a 3rd 
party tracker like Bounds Checker?

Oleg.

On 2009/5/15 15:58, Kenton Varda wrote:
> Can you get stack traces for these?
>
> I ran the whole protobuf test suite with the google-perftools leak 
> checker and didn't detect any leaks.
>
> On Thu, May 14, 2009 at 4:05 PM, Oleg Smolsky <o...@smolsky.net 
> <mailto:o...@smolsky.net>> wrote:
>
>     Hi Kenton, thank you for letting me know. I've just got and built
>     this version of protoc/libprotobuf and run my unit test - there
>     are still a few leaks according to VS2008. So, there is a
>     difference between v2.1.0 and the destructor-based patch that I
>     had cleaned up for v2.0.3.
>
>     The output is below. Do you happen to recognize the 24 byte
>     structure that starts with a pointer and then contains 0xffffffff? :)
>
>     Kind regards,
>     Oleg.
>
>     Detected memory leaks!
>     Dumping objects ->
>     {1438} normal block at 0x00D72620, 24 bytes long.
>      Data: <h ( > 68 A6 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {1437} normal block at 0x00D725C8, 24 bytes long.
>      Data: <0 ( > 30 A6 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {946} normal block at 0x00246AB0, 24 bytes long.
>      Data: <  ( > A0 A1 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {945} normal block at 0x00249CD0, 24 bytes long.
>      Data: <h ( > 68 A1 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {934} normal block at 0x00249840, 24 bytes long.
>      Data: <0 ( > 30 A1 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {812} normal block at 0x002469B0, 24 bytes long.
>      Data: <x ( > 78 9D 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {685} normal block at 0x00D71FB0, 24 bytes long.
>      Data: <  ( > D0 9C 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {667} normal block at 0x00D71608, 24 bytes long.
>      Data: <` ( > 60 9C 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {666} normal block at 0x00D715B0, 24 bytes long.
>      Data: <( ( > 28 9C 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {663} normal block at 0x00D713D8, 24 bytes long.
>      Data: <Pu( > 50 75 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {148} normal block at 0x00245820, 24 bytes long.
>      Data: <pt( > 70 74 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {147} normal block at 0x002457C8, 24 bytes long.
>      Data: <8t( > 38 74 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {136} normal block at 0x00245290, 24 bytes long.
>      Data: < t( > 00 74 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     {135} normal block at 0x00245238, 24 bytes long.
>      Data: < s( > C8 73 28 00 FF FF FF FF 00 00 00 00 00 00 00 00
>     Object dump complete.
>
>
>     On 2009/5/14 13:08, Kenton Varda wrote:
>>     FYI:  This is fixed in the 2.1.0 release (you can call
>>     google::protobuf::ShutdownProtobufLibrary() to clean up all "leaks").
>>
>>     On Fri, Mar 27, 2009 at 7:07 PM, Kenton Varda <ken...@google.com
>>     <mailto:ken...@google.com>> wrote:
>>
>>         On Fri, Mar 27, 2009 at 4:30 PM, Oleg Smolsky
>>         <o...@smolsky.net <mailto:o...@smolsky.net>> wrote:
>>
>>             So, the next question is - would it ever make its way
>>             into your SVN? If so, do you see a need for a switch of
>>             some kind?
>>
>>
>>         Yeah, reviewing and committing this is on my todo list for
>>         the next release.
>>
>>
>
>


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to protobuf@googlegroups.com
To unsubscribe from this group, send email to 
protobuf+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to