Boost logo

Boost Users :

From: Georgios Diamantopoulos (georgiosd_at_[hidden])
Date: 2005-11-24 17:09:26


Dear all,

I am encountering a crash due to corrupted memory
(_CrtIsValidHeapPointer assertion) when running a project that uses
boost::fast_pool_allocator with std::list.

This project is using mixed code. More specifically:
- There is a native static library project named "KLT" which uses
boost::fast_pool_allocator
- klt.h is included in another, mixed (native+CLR) project where objects
from klt.h are created

The stack trace is shown below. It seems that this is a problem with
static initialization of an object boost::pool makes. Does anyone have
any idea as to what might be the problem? I am using the latest boost
1.33.1 compiled fresh with VC8.

Thanks in advance.

Best regards,

Georgios

STACK TRACE

> msvcr80d.dll!_msize_dbg(void * pUserData=0xd0ac4d40, int
nBlockUse=2) Line 1414 + 0x30 bytes C++
     msvcr80d.dll!_dllonexit_nolock(int (void)* func=0x004219e0, void
(void)* * * pbegin=0x0012e828, void (void)* * * pend=0x0012e820) Line
295 + 0xd bytes C
     msvcr80d.dll!__dllonexit(int (void)* func=0x004219e0, void (void)*
* * pbegin=0x0012e828, void (void)* * * pend=0x0012e820) Line 273 +
0x11 bytes C
     MyVideoTool.exe!_onexit(int (void)* func=0x004219e0) Line 110 +
0x11 bytes C
     MyVideoTool.exe!atexit(void (void)* func=0x004219e0) Line 127 +
0x9 bytes C
     
MyVideoTool.exe!boost::details::pool::singleton_default<boost::singleton_pool<boost::fast_pool_allocator_tag,80,boost::default_user_allocator_new_delete,boost::details::pool::win32_mutex,32>::pool_type>::instance()
Line 83 + 0x32 bytes C++
     
MyVideoTool.exe!boost::details::pool::singleton_default<boost::singleton_pool<boost::fast_pool_allocator_tag,80,boost::default_user_allocator_new_delete,boost::details::pool::win32_mutex,32>::pool_type>::object_creator::object_creator()
Line 66 + 0x28 bytes C++
     MyVideoTool.exe!`dynamic initializer for
'boost::details::pool::singleton_default<boost::singleton_pool<boost::fast_pool_allocator_tag,80,boost::default_user_allocator_new_delete,boost::details::pool::win32_mutex,32>::pool_type>::create_object''()
Line 50 + 0x28 bytes C++
     [Managed to Native Transition]
     MyVideoTool.exe!_initterm(void** pfbegin = 0x00422214, void pfend =
) Line 130 C++
     
MyVideoTool.exe!<CrtImplementationDetails>::LanguageSupport::InitializeNative()
Line 534 C++
     
MyVideoTool.exe!<CrtImplementationDetails>::LanguageSupport::_Initialize()
Line 680 C++
     
MyVideoTool.exe!<CrtImplementationDetails>::LanguageSupport::Initialize()
Line 824 + 0x9 bytes C++
     MyVideoTool.exe!?.cctor@@$$FYMXXZ() Line 871 + 0x9 bytes C++
     [Frames below may be incorrect and/or missing, no symbols loaded
for mscorwks.dll]
     ntdll.dll!7c91b686()
     ntdll.dll!7c949e61()
     ntdll.dll!7c91b5f4()


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net