
On 4.9.2013 10:45, Patrick Steele wrote:
Bump. Does anyone have any idea why this code is causing a crash please? msvcr110d.dll!operator delete(void * pUserData) Line 52 C++ boost_filesystem-vc110-mt-gd-1_54.dll!std::allocator<wchar_t>::deallocate(wchar_t * _Ptr, unsigned int __formal) Line 586 C++ boost_filesystem-vc110-mt-gd-1_54.dll!std::_Wrap_alloc<std::allocator<wchar_t> >::deallocate(wchar_t * _Ptr, unsigned int _Count) Line 888 C++ boost_filesystem-vc110-mt-gd-1_54.dll!std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::_Tidy(bool _Built, unsigned int _Newsize) Line 2265 C++ boost_filesystem-vc110-mt-gd-1_54.dll!std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >::~basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> >() Line 965 C++
Hi, just guessing, but make sure you're using binary compatible versions of built Boost libraries and your application. It could be that you're building your app eg. with _SECURE_SCL=0 (or any flag that modifies runtime behaviour) but Boost with _SECURE_SCL=1 (which is the default for debug builds). Or vice versa. That would explain why the crash occurs in the string destructor; you're constucting it without additional debug checking (= in your app), but when destructor is called (= in filesystem), it expects the additional information/members/data to be there (but it isn't) that it tries to tidy. -- Pekka