diff -r a1e347446159 -r 28ccaba883f4 genericopenlibs/cppstdlib/stl/src/allocators.cpp --- a/genericopenlibs/cppstdlib/stl/src/allocators.cpp Fri Sep 17 19:25:42 2010 +0530 +++ b/genericopenlibs/cppstdlib/stl/src/allocators.cpp Wed Oct 13 19:39:18 2010 +0530 @@ -766,7 +766,10 @@ struct __node_alloc_cleaner { ~__node_alloc_cleaner() { - __node_alloc_impl::_S_dealloc_call(); + __node_alloc_impl::_S_dealloc_call(); +#ifndef _STLP_USE_LOCK_FREE_IMPLEMENTATION + std::_Node_Alloc_Lock::_S_lock._M_destroy(); +#endif//_STLP_USE_LOCK_FREE_IMPLEMENTATION } };