Boost logo

Boost Users :

Subject: Re: [Boost-users] [filesystem] path destructor crash
From: Pekka Seppänen (pekka.seppanen_at_[hidden])
Date: 2013-09-04 04:04:10


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


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