> There is indeed following with one stack trace, please see following > error messages. It frees an object with std::map, but I failed to see > why that could be a problem. I must miss something here, please > enlighten me. > > ==9629== Address 0xaebeea8 is 32 bytes inside a block of size 48 free'd > ==9629== at 0x4A05B9D: operator delete(void*) (vg_replace_malloc.c:342) > ==9629== by 0x43F9A0: ... (new_allocator.h:98) > ==9629== by 0x43F9C8: ... (stl_tree.h:361) > ==9629== by 0x43FA15: ... (stl_tree.h:391) > ==9629== by 0x43FA75: ... (stl_tree.h:1319) > ==9629== by 0x43FAA8: ... (stl_map.h:523)
You are accessing an object that has been deleted. Look at the tracebacks where your code starts. If they are too short increase their depth with --num-callers=20000. The part of the traceback you showed does not reveal where the object got deleted. Look at the code between the deletion and the usage of the bad pointer. Normally they are not too wide apart. You could also show the code. Christoph ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Valgrind-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/valgrind-users
