How to solve this Exception?
-
Hi! When I'm running a program, it crashes into the "dbgdel.cpp" file, at hte following line:
_ASSERTE(_BLOCK_TYPE_IS_VALID(pHead->nBlockUse));
The Call stack contains the following: winRTSimpleApp.exe!operator delete(void * pUserData=0x01ae5064) Line 52 + 0x51 bytes C++ winRTSimpleApp.exe!Entity::`scalar deleting destructor'() + 0x3c bytes C++ winRTSimpleApp.exe!Entity::OnDelete(VariantList * pVList=0x06ac0af0) Line 156 + 0x2b bytes C++ winRTSimpleApp.exe!boost::_mfi::mf1<void,Entity,VariantList *>::operator()(Entity * p=0x01ae5064, VariantList * a1=0x06ac0af0) Line 162 + 0x10 bytes C++ winRTSimpleApp.exe!boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> >::operator()<boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list1<VariantList * &> >(boost::_bi::type<void> __formal={...}, boost::_mfi::mf1<void,Entity,VariantList *> & f={...}, boost::_bi::list1<VariantList * &> & a={...}, boost::_bi::type<void> __formal={...}) Line 293 C++ winRTSimpleApp.exe!boost::_bi::bind_t<void,boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> > >::operator()<VariantList *>(VariantList * & a1=0x06ac0af0) Line 33 C++ winRTSimpleApp.exe!boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void,boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> > >,void,VariantList *>::invoke(boost::detail::function::function_buffer & function_obj_ptr={...}, VariantList * a0=0x06ac0af0) Line 153 C++ winRTSimpleApp.exe!boost::function1<void,VariantList *>::operator()(VariantList * a0=0x06ac0af0) Line 989 + 0x17 bytes C++ winRTSimpleApp.exe!boost::signals::detail::call_bound1<void>::caller<VariantList *,boost::function<void __cdecl(VariantList *)> >::operator()boost::signals::detail::connection\_slot\_pair(const boost::signals::detail::connection_slot_pair & slot={...}) Line 120 C++ winRTSimpleApp.exe!boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound1<void>::caller<VariantList *,boost::function<void __cdecl(VariantList *)> >,boost::signals::detail::named_slot_map_iterator>::dereference() Line 61 + 0x1b bytes C++ winRTSimpleApp.exe!boost::iterator_core_access::deref
-
Hi! When I'm running a program, it crashes into the "dbgdel.cpp" file, at hte following line:
_ASSERTE(_BLOCK_TYPE_IS_VALID(pHead->nBlockUse));
The Call stack contains the following: winRTSimpleApp.exe!operator delete(void * pUserData=0x01ae5064) Line 52 + 0x51 bytes C++ winRTSimpleApp.exe!Entity::`scalar deleting destructor'() + 0x3c bytes C++ winRTSimpleApp.exe!Entity::OnDelete(VariantList * pVList=0x06ac0af0) Line 156 + 0x2b bytes C++ winRTSimpleApp.exe!boost::_mfi::mf1<void,Entity,VariantList *>::operator()(Entity * p=0x01ae5064, VariantList * a1=0x06ac0af0) Line 162 + 0x10 bytes C++ winRTSimpleApp.exe!boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> >::operator()<boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list1<VariantList * &> >(boost::_bi::type<void> __formal={...}, boost::_mfi::mf1<void,Entity,VariantList *> & f={...}, boost::_bi::list1<VariantList * &> & a={...}, boost::_bi::type<void> __formal={...}) Line 293 C++ winRTSimpleApp.exe!boost::_bi::bind_t<void,boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> > >::operator()<VariantList *>(VariantList * & a1=0x06ac0af0) Line 33 C++ winRTSimpleApp.exe!boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void,boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> > >,void,VariantList *>::invoke(boost::detail::function::function_buffer & function_obj_ptr={...}, VariantList * a0=0x06ac0af0) Line 153 C++ winRTSimpleApp.exe!boost::function1<void,VariantList *>::operator()(VariantList * a0=0x06ac0af0) Line 989 + 0x17 bytes C++ winRTSimpleApp.exe!boost::signals::detail::call_bound1<void>::caller<VariantList *,boost::function<void __cdecl(VariantList *)> >::operator()boost::signals::detail::connection\_slot\_pair(const boost::signals::detail::connection_slot_pair & slot={...}) Line 120 C++ winRTSimpleApp.exe!boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound1<void>::caller<VariantList *,boost::function<void __cdecl(VariantList *)> >,boost::signals::detail::named_slot_map_iterator>::dereference() Line 61 + 0x1b bytes C++ winRTSimpleApp.exe!boost::iterator_core_access::deref
By debugging the program, setting a break-point on this line and examining the var pHead->nBlockUse Failing that, it's hard to say without seeing some actual code. Though from your stack trace it's happening during the action of delete, which has been called from a destructor. Oh, & I see the editor munched all of your angle brackets too.
-
Hi! When I'm running a program, it crashes into the "dbgdel.cpp" file, at hte following line:
_ASSERTE(_BLOCK_TYPE_IS_VALID(pHead->nBlockUse));
The Call stack contains the following: winRTSimpleApp.exe!operator delete(void * pUserData=0x01ae5064) Line 52 + 0x51 bytes C++ winRTSimpleApp.exe!Entity::`scalar deleting destructor'() + 0x3c bytes C++ winRTSimpleApp.exe!Entity::OnDelete(VariantList * pVList=0x06ac0af0) Line 156 + 0x2b bytes C++ winRTSimpleApp.exe!boost::_mfi::mf1<void,Entity,VariantList *>::operator()(Entity * p=0x01ae5064, VariantList * a1=0x06ac0af0) Line 162 + 0x10 bytes C++ winRTSimpleApp.exe!boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> >::operator()<boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list1<VariantList * &> >(boost::_bi::type<void> __formal={...}, boost::_mfi::mf1<void,Entity,VariantList *> & f={...}, boost::_bi::list1<VariantList * &> & a={...}, boost::_bi::type<void> __formal={...}) Line 293 C++ winRTSimpleApp.exe!boost::_bi::bind_t<void,boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> > >::operator()<VariantList *>(VariantList * & a1=0x06ac0af0) Line 33 C++ winRTSimpleApp.exe!boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void,boost::_mfi::mf1<void,Entity,VariantList *>,boost::_bi::list2<boost::_bi::value<Entity *>,boost::arg<1> > >,void,VariantList *>::invoke(boost::detail::function::function_buffer & function_obj_ptr={...}, VariantList * a0=0x06ac0af0) Line 153 C++ winRTSimpleApp.exe!boost::function1<void,VariantList *>::operator()(VariantList * a0=0x06ac0af0) Line 989 + 0x17 bytes C++ winRTSimpleApp.exe!boost::signals::detail::call_bound1<void>::caller<VariantList *,boost::function<void __cdecl(VariantList *)> >::operator()boost::signals::detail::connection\_slot\_pair(const boost::signals::detail::connection_slot_pair & slot={...}) Line 120 C++ winRTSimpleApp.exe!boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound1<void>::caller<VariantList *,boost::function<void __cdecl(VariantList *)> >,boost::signals::detail::named_slot_map_iterator>::dereference() Line 61 + 0x1b bytes C++ winRTSimpleApp.exe!boost::iterator_core_access::deref
The assertion is about pHead->nBlockUse being an invalid Block. May be it's null? Did you check the values of pHead & nBlockUse.
-
The assertion is about pHead->nBlockUse being an invalid Block. May be it's null? Did you check the values of pHead & nBlockUse.
Or it's been deleted already...