On 3/26/2012 7:25 PM, Henner Zeller wrote:
> Can you drill down _what_ object is leaking ? In particular, did you
> narrow down that it is indeed protobufs that cause the leak ?
> You need to find the leaking object first, otherwise it is a bit hard
> do diagnose what is going on.

I just finally got around to figuring it out this afternoon,
after spending the morning fighting with my debugging tools.

It's line 85 in parser.cc:

const TypeNameMap kTypeNames = MakeTypeNameTable();

I have done some more poking around, and I can't tell if what
is happening is that the destructor for that hash_map isn't
getting called (unlikely), or that it's getting called after
the MSFT memory tracer has already run (which I would find
more likely).

I've tried a couple of different ways to use libprotobuf (static,
dll, etc), and they all seem to exhibit this behavior.

I'm really leaning towards "it's an order of initialization
problem" at this point, and I might have to just eat the
warnings, unless someone sees the kTypeNames variable there
and says "oh yeah, I know what's going on there".

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 
For more options, visit this group at 

Reply via email to