Followers 0

# [Resolved] std::list clear() - Unhandled Exception

## 3 posts in this topic

What are some common causes for unhandled exceptions from a std::list's Clear() call? Given...

*The list does not contain pointers, the resource is never released manually e.g std::list<int>

*It breaks here (inside list)

 #if _ITERATOR_DEBUG_LEVEL == 2
void _Orphan_ptr(_Myt& _Cont, _Nodeptr _Ptr) const
{	// orphan iterators with specified node pointers
_Lockit _Lock(_LOCK_DEBUG);
const_iterator **_Pnext = (const_iterator **)_Cont._Getpfirst();
if (_Pnext != 0)
while (*_Pnext != 0)
|| _Ptr != 0 && (*_Pnext)->_Ptr != _Ptr) //!!BREAKS HERE - On second pass through loop (while (*_Pnext != 0)) )
_Pnext = (const_iterator **)(*_Pnext)->_Getpnext();
else
{	// orphan the iterator
(*_Pnext)->_Clrcont();
*_Pnext = *(const_iterator **)(*_Pnext)->_Getpnext();
}
}
#endif /* _ITERATOR_DEBUG_LEVEL == 2 */

Edited by reaperrar
0

##### Share on other sites

Usually the first thing I try when I get an "impossible" crash is to Rebuild Entire Project (takes my project only 5-10 minutes, so it's not as bad as some other projects with multi-hour build times). The reason? I can't count the number of times that a change made to some part of the project somehow affected other unrelated parts of the project simply because the generated object files somehow didn't properly line up. No, it (surprisingly) wasn't a mistake on my end, no there wasn't corrupt memory, and no the two portions of the project weren't even aware of each others' existence.

Once a proper Rebuild Entire Project completes, if something is still going wrong, even if it seems "impossible", then it's obviously my fault - that's when I start really cracking down with the debugger. (Though obviously I am using the debugger before calling something 'impossible' and doing the complete rebuild, but at this point I start checking everything that seems evenly remotely related to the problem area).

1

##### Share on other sites

Ty for the help. The problem was in fact somewhere unrelated though not too far fortunately. Stopped looking at the list itself though thx to your replies.

0

## Create an account

Register a new account